カメヲラボ

主にプログラミングとお勉強全般について書いてます

A funny game

・良い子は絶対書いちゃいけないコード
ま、ほとんどの問題がそうだけどw


a[999];n;
d(f,k,i,t){
for(i=*a*2;--i-1;)
f=k-a[i]||d(a[i]=0,t=a[i^=1],a[i]=0)?f:t;
return f;
}
main(){
for(;~scanf("%d",a+n++););
printf(n?"%swins flying to airport %d"
:"%sloses","First player ",n=d(0,a[1]));
}
x0doraさんが201Bで通しているけどメモリサイズが違うので、もっとカシコーな方法で書く方法があるのだろう。しかし私にはこれが限界(;´д`)
ちなみに通した直後即座にrejudgeで消し去られたコードは、http://acm.timus.ru/problem.aspx?space=1&num=1045でオリジナルの問題があったのでこちらのシステム上で解析した。なぜかというと、こっちのジャッジシステムはWAになった場合に何番目のテストケースでダメだったかということを教えてくれるので、解析が超簡単だから。とはいうものの、11個もあるケースを解析するのは疲れた・・・。せっかく頑張ったのにスグ消されるとは。追加されたケースに関して再び解析すれば、おそらく150Bくらいでと通せるだろうけど、もういいっす。。。