您的位置:首页 > 其它

hdu 4451 Dressing

2014-11-01 11:31 267 查看
题意:有N/M/K件衣服/裤子/鞋子。有些搭配是不得体的(鞋子和裤子的组合或裤子和衣服的组合),给出这些不合适的搭配,问总共还有多少种搭配。

思路:因为不合适的搭配都发生在裤子上,枚举每条裤子,统计它能与多少衣服/鞋子搭配,乘起来就可以了。

#include <iostream>         
#include <stdio.h>         
#include <cmath>         
#include <algorithm>         
#include <iomanip>         
#include <cstdlib>         
#include <string>         
#include <string.h>         
#include <vector>         
#include <queue>         
#include <stack>         
#include <map>       
#include <set>       
#include <ctype.h>         
#include <sstream>     
   
#define ll long long     
#define min3(a,b,c) min(a,min(b,c))  
#define max3(a,b,c) max(a,max(b,c)) 
#include<time.h>
using namespace std;

#define INF 1000000

int a[1010];
int b[1010];

char str1[32];
char str2[32];

int main(){
	int n,m,k;
	while(cin>>n>>m>>k){
		if(n==0&&m==0&&k==0)break;
		int p;
		cin>>p;
		for(int i=1;i<=m;i++){
			a[i]=n;
			b[i]=k;
		}
		for(int i=1;i<=p;i++){
			int u,v;
			scanf("%s%d%s%d",str1,&u,str2,&v);
			if(str1[0]=='c'){
				a[v]--;
			}else{
				b[u]--;
			}
		}
		int ans=0;
		for(int i=1;i<=m;i++){
			ans+=a[i]*b[i];
		}
		cout<<ans<<endl;
	}
	return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: