PKU 1969 Count on Canton
http://poj.org/problem?id=1969
問題文のような感じで分数を並べたときに、n番目の分数は何かを求める問題。
最初全部を格納しようとしたらMLEだったのですが、愚直コードでも書いてみるものですね。意外にも通りました。
main(){ int n; while(cin>>n){ int c=1,p=1; rep(i,n-1){ if(c==1 && p%2)++p; else if(p==1 && c%2==0)++c; else if(p+c&1)++c,--p; else --c,++p; } cout<<"TERM "<<n<<" IS "<<c<<'/'<<p<<endl; } }