(~ ̄▽ ̄)~*
//既然是求最少能胜几次 //说明对方是要尽可能让我输 //但为了避免浪费,对方会用比我的牌大的牌中的最小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; }