(Relax 1.6)POJ 1323 Game Prediction(利用有序化数据进行贪心选择: 有m个人,每个人有n张牌,别人想方设法的让你输,求你能赢多少次)

/*
 * POJ_1323.cpp
 *
 *  Created on: 2013年11月18日
 *      Author: Administrator
 */


#include <iostream>
#include <cstdio>
#include <algorithm>

using namespace std;

const int maxn = 1100;

int a[maxn];
bool flag[maxn];

int main(){
	int m,n;
	int counter = 1;

	while(scanf("%d%d",&m,&n)!=EOF,n||m){
		memset(flag,0,sizeof(flag));

		int i;
		for(i = 0 ; i < n ; ++i){
			scanf("%d",&a[i]);
			flag[a[i]] = true;
		}

		sort(a,a+n);

		int j;
		int ans = 0;
		for(i = 0 ; i < n ; ++i){
			for(j = a[i] + 1 ; j <= n*m ; ++j){//别人足够聪明&&并且想方设法的让你输..(足够聪明体现在,他打出比你大一点的牌)
				if(!flag[j]){
					flag[j] = true;
					ans++;//别人赢得次数+1
					break;
				}
			}
		}

		printf("Case %d: %d\n",counter++,n-ans);
	}

	return 0;
}

你可能感兴趣的:((Relax 1.6)POJ 1323 Game Prediction(利用有序化数据进行贪心选择: 有m个人,每个人有n张牌,别人想方设法的让你输,求你能赢多少次))