程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C++ >> C++入門知識 >> poj 4451 Dressing 一個小模擬 金華regional

poj 4451 Dressing 一個小模擬 金華regional

編輯:C++入門知識

cou[],cou1[]分別記錄clothes 和shoe的重復次數,自己花一下圖就好啦
[cpp] 
#include<iostream> 
#include<cstdio> 
#include<memory.h> 
#define M 1005 
using namespace std; 
char a[20],b[20]; 
int cou[M],te[M][M],te1[M][M],cou1[M]; 
int main(){ 
 //   freopen("in.txt","r",stdin); 
    int n,m,k,p,x,y; 
//    printf("%d\n",(1<<31)); 
    while(~scanf("%d%d%d",&n,&m,&k),n+m+k){ 
        scanf("%d",&p); 
        memset(cou,0,sizeof(cou)); 
        memset(cou1,0,sizeof(cou1)); 
        for(int i=0;i<=1000;i++) 
            for(int j=0;j<=1000;j++) 
                {te[i][j]=0;te1[i][j]=0;} 
        int sum=n*m*k; 
        while(p--){ 
            scanf("%s%d%s%d",a,&x,b,&y); 
            if(a[0]=='c'){ 
                if(te[x][y]==0){ 
                    cou[y]++; 
                    sum-=k; 
                    sum+=cou1[y]; 
                    te[x][y]=1;//去重 
                } 
            } 
            if(a[0]=='p'){ 
                if(te1[x][y]==0){ 
                    cou1[x]++; 
                    sum-=n; 
                    sum+=cou[x]; 
                    te1[x][y]=1;//去重 
                } 
            } 
        } 
        printf("%d\n",sum); 
    } 

 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved