intさわだんのBlack History

刹那的レジェンドになりたい。

第7回日本情報オリンピック 予選3 カードゲーム

やるだけ

つらい

#include <cstdio>
 
using namespace std;
 
int main(){
 
  while(1){
 
  int n;
 
  bool t[203],h[203];
 
  scanf("%d",&n);
  if(n == 0) break;
 
  for(int i = 0;i <= n*2;i++){
    t[i] = false;
    h[i] = false;
  }
 
  for(int i = 1;i <= n;i++){
    int tmp;
    scanf("%d",&tmp);
    t[tmp] = true;
  }
  for(int i = 1;i <= n*2;i++){
    if(t[i] == false){
      h[i] = true;
    }
  }
  int tc = 0,hc = 0,pre = 0;
  bool ban = true;
  while(1){
    if(tc == n || hc == n) break;
    if(ban){
      for(int i = pre+1;i <= n*2;i++){
    if(t[i] == true){
      pre = i;
      t[i] = false;
      tc++;
      goto out;
    }
      }
      pre = 0;
    out:
      ;
      ban = !ban;
    }else{
      for(int i = pre+1;i <= n*2;i++){
    if(h[i] == true){
      pre = i;
      h[i] = false;
      hc++;
      goto hev;
    }
      }
      pre = 0;
    hev:
      ;
      ban = !ban;
    }
  }
  int a=0,b=0;
  if(tc == n){
    a = n - hc;
  }else{
    b = n - tc;
  }
 
  printf("%d\n%d\n",a,b);
 
  }
 
  return 0;
 
}