欧科,126卡盟,冯仰妍下载
inputthe input consists of several test cases. the first line of each case contains two integers m (2 <= m <= 20) and n (1 <= n <= 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.
outputfor 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张牌。点数1-n*m,出得最大的那个人赢一局,问你最多赢几局
题解:贪心,我出大的,对面出最小的,我出小的,对面最小但比我大的
#include<iostream> #include<algorithm> #include<cstring> #include<sstream> #include<cmath> #include<cstdlib> #include<queue> using namespace std; #define pi 3.14159265358979323846264338327950 bool a[1050]; int main() { int m=0,n=0,count=0,t; while(scanf("%d %d",&m,&n) && (m||n)) { count++; int i=0; int win=0,big=0; memset(a,0,sizeof(a)); for(i=0;i<n;i++) { scanf("%d",&t); a[t]=1; } for(i=n*m;i>0;i--) { if (a[i]) { if (big==0) ++win; else big--; } else big++; } printf("case %d: %d\n",count,win); } return 0; }
如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复
如何在没有core文件的情况下用dmesg+addr2line定位段错误
用QT制作3D点云显示器——QtDataVisualization
网友评论