PKU 1663 Number Steps
http://poj.org/problem?id=1663
座標が与えられるので図のような感じで与えられている数を答えるというような問題。
ありうる全ての座標を書き出しました。
main(){ map<PI,int> ans; int x=0,y=0; rep(i,11000){ ans[mp(x,y)]=i; x+=(i%4<3)-!(i%4<3); y+=!(i%4==1)-(i%4==1); } int n; cin>>n; while(n--){ cin>>x>>y; if(ans.count(mp(x,y)))cout<<ans[mp(x,y)]<<endl; else cout<<"No Number"<<endl; } }