标签:
//既然是求最少能胜几次 //说明对方是要尽可能让我输 //但为了避免浪费,对方会用比我的牌大的牌中的最小pip的牌来击败我 #include<iostream> #include<cstdio> #include<cstring> #include<algorithm> using namespace std; int main() { int Cas=0; int m,n,pip[1010],vis[1010]; while(scanf("%d%d",&m,&n)&&m+n) { Cas++; memset(pip,0,sizeof(pip)); memset(vis,0,sizeof(vis)); int maxpip=n*m; for(int i=0;i<n;i++) { scanf("%d",&pip[i]); vis[pip[i]]=1; } sort(pip,pip+n); int res=0; int j=1; for(int i=0;i<n;i++) { bool flag=0; for( ;j<=maxpip;j++) { if(!vis[j]&&j>pip[i]) { flag=1; j++; break; } } if(flag)//输一次加一次 res++; } printf("Case %d: %d\n",Cas,n-res); } return 0; }
标签:
原文地址:http://www.cnblogs.com/atmacmer/p/5216411.html