UVa2521
理解:max 记录的是有大牌的个数 mid 是有中断 而造成的不确定 我理解是一个间断点以下的 数和一个间断点抵消 在前面没有间断的情况下 才能确定这张牌稳赢
#include<iostream> #include<algorithm> #include<cstring> #include<cstdio> using namespace std; int num[1005]; int main() { int m,n; int ct=1; while(cin>>m>>n&&(n+m)) { memset(num,0,sizeof(num)); for(int i=0; i<n; i++) { int temp; cin>>temp; num[temp]=1; } int max=0,mid=0; for(int i=n*m;i>0;i--) { if(num[i]==1){ if(mid==0)max++; else mid--; } else mid++; } printf("Case %d: %d\n",ct++,max); } }