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;
}

POJ 1323 Game Prediction(贪心)

Game Prediction Time Limit:1000MS     Memory Limit:10000KB     64bit IO Format:%I64d & %I64u Sub...
  • shao824714565
  • shao824714565
  • 2016年07月11日 20:50
  • 202

POJ | 1323 Game Prediction | 贪心

至少可以赢几局,直接求占最大几次。 #include #include #include int list[110], m, n; int cmp(const void *a, const...
  • utwodownson
  • utwodownson
  • 2013年06月05日 22:16
  • 329

POJ 1323 Game Prediction 贪心

题目链接:http://poj.org/problem?id=1323 题目大意:m个人(包括你)玩一个卡片游戏,每个人n张卡片,卡片上数字为小于等于n * m的正整数,没有重复的数字。每轮...
  • niuxiunan
  • niuxiunan
  • 2015年10月15日 15:19
  • 436

poj 1323 Game Prediction

算是贪心题吧,首先的明白求的是最小的,所以设想剩余的牌中最大的n张在其中一个人手里,只要某个回合自己能赢这个人就表明这局是必胜的。在比较的过程中自己应该从最大的牌开始拿,依次递减,另外的一个人则每次找...
  • purevegetable
  • purevegetable
  • 2013年09月05日 17:04
  • 441

POJ 1323 Game Prediction

纸牌游戏, M人每人N张牌。 每轮如果有人能比你的牌更大,你就赢不了。 如: 2 5 1 7 2 10 9; 总共 2*5=10张牌,你手里5张。 当你10的时候,没有比你更大的。 9...
  • dongshimou
  • dongshimou
  • 2013年10月28日 09:13
  • 455

POJ——1323 Game Prediction

Game Prediction Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 10120 ...
  • wuxiushu
  • wuxiushu
  • 2015年09月19日 08:55
  • 344

Game Prediction POJ - 1323

// 大意就是输入 n, m,表示有 n 个人,每个人有 m 张牌,牌面从 1 到 m*n , 第二行输入 m 个数表示你自己手里有的牌和牌的大小// 问利用你手里现有的这几张牌,你最多可以通过比大小...
  • uyret
  • uyret
  • 2017年09月05日 21:46
  • 37

poj 1323 Game Prediction

poj  1323  Game Prediction                    题目链接:poj  1323  http://poj.org/problem?id=1323 贪心水 题目大...
  • fghdvbgt
  • fghdvbgt
  • 2013年07月19日 19:49
  • 601

POJ 1323 Game Prediction

Game PredictionTime Limit: 1000MS Memory Limit: 10000KTotal Submissions: 6117 Accepted: 3026Descript...
  • sushizhuyilang
  • sushizhuyilang
  • 2010年08月11日 17:22
  • 239

POJ - 1323 Game Prediction

Game Prediction Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 11071 ...
  • u013852115
  • u013852115
  • 2017年07月12日 08:12
  • 131
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:poj Game Prediction 1323 (贪心ordp)
举报原因:
原因补充:

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