poj Game Prediction 1323 (贪心ordp)

原创 2015年11月20日 20:44:35
Game Prediction
Time Limit: 1000MS   Memory Limit: 10000K
Total Submissions: 10194   Accepted: 4892

Description

Suppose there are M people, including you, playing a special card game. At the beginning, each player receives N cards. The pip of a card is a positive integer which is at most N*M. And there are no two cards with the same pip. During a round, each player chooses one card to compare with others. The player whose card with the biggest pip wins the round, and then the next round begins. After N rounds, when all the cards of each player have been chosen, the player who has won the most rounds is the winner of the game.



Given your cards received at the beginning, write a program to tell the maximal number of rounds that you may at least win during the whole game.

Input

The input consists of several test cases. The first line of each case contains two integers m (2?20) and n (1?50), representing the number of players and the number of cards each player receives at the beginning of the game, respectively. This followed by a line with n positive integers, representing the pips of cards you received at the beginning. Then a blank line follows to separate the cases.

The input is terminated by a line with two zeros.

Output

For each test case, output a line consisting of the test case number followed by the number of rounds you will at least win during the game.

Sample Input

2 5
1 7 2 10 9

6 11
62 63 54 66 65 61 57 56 50 53 48

0 0

Sample Output

Case 1: 2
Case 2: 4
//题意:
有m个人,每人有n张牌,(Hait: 暗示有n*m张牌)轮流出牌,谁出的牌最大,谁赢,问你至少能赢几场。
#include<stdio.h>
#include<string.h>
#include<algorithm>
using namespace std;
int a[1010];
int b[1010];
int cmp(int a,int b)
{
	return a>b;
}
int main()
{
	int T=1,n,m,i,j;
	while(scanf("%d%d",&m,&n),n|m)
	{
		memset(b,0,sizeof(b));
		int k=n;
		for(i=1;i<=n;i++)
		{
			scanf("%d",&a[i]);
			b[a[i]]=1;
		}
		sort(a+1,a+n+1);
		int mm=n*m;
		int l=0,w=0;
		while(1)
		{
			if(mm==a[k])
				w++;
			else
			{
				l++;
				mm--;
			}
			if(l+w==n)
				break;
			k--;
			mm--;
		}
		printf("Case %d: %d\n",T++,w);
	}
	return 0;
}

相关文章推荐

POJ1323 Game Prediction(贪心)

题目: Game Prediction Time Limit: 1000MS   Memory Limit: 10000K Total Sub...

POJ1323 Game Prediction

Description Suppose there are M people, including you, playing a special card game. At the beginn...

POJ——1323 Game Prediction

Game Prediction Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 10120 ...

poj1323(Game Prediction)

题目链接:http://poj.org/problem?id=1323         题目意思:有n个人,每个人手上有m张牌,每张牌上写着1--n*m之间的一个不同数字,n个人拿着他们手中的牌做游...
  • kath_y
  • kath_y
  • 2012年05月09日 08:52
  • 593

poj 1323 Game Prediction

//这一题根本上就不用考虑有多少个人来玩,只是考虑有两手牌就可以了,一组是给出的牌,一组是除了给出的牌之外,剩下的牌就可以 //将两手牌分别储存在两个数组中,然后从小排序,最后运用贪心就可以了! #...
  • yzl_rex
  • yzl_rex
  • 2012年05月25日 19:53
  • 495

贪心 hdu-1338-Game Prediction

题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=1338 题目意思: 有m个人,每个人有n张牌,牌点为在1~n*m中的不同的数。每回合每个人出一张...

HDU 1338 Game Prediction【贪心】

慧航空AI大赛”(报名中...)  Game Prediction Time Limit: 2000/1000 MS (Java/Others)    Memory L...

HDU 1338 Game Prediction 贪心

HDU 1338 Game Prediction 贪心

poj----Game Prediction

Description Suppose there are M people, including you, playing a special card game. At the beginnin...

nyoj248 BUYING FEED(贪心orDP)

题目248题目信息运行结果本题排行讨论区 BUYING FEED 时间限制:3000 ms  |  内存限制:65535 KB 难度:4 描述 Farmer John need...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:poj Game Prediction 1323 (贪心ordp)
举报原因:
原因补充:

(最多只允许输入30个字)