Codeforces #178 Div2 A "Shaass and Oskols"
問題
http://codeforces.com/contest/294/problem/A
訳
電線がn本あり、その電線には上から下に向かって1~Nの番号が振られている。
各電線に止まっている鳥の数が与えられる。
電線iの内の一羽を狙って銃で撃つと、狙われた鳥は死ぬ。
それから、
狙われた鳥より左にいる鳥は番号i-1の電線に移動する。もしiが1だったら遠くに逃げる。
狙われた鳥より右にいる鳥は番号i+1の電線に移動する。もしiがNだったら遠くに逃げる。
どの電線の左から何番目の鳥を撃ったかという情報がm個与えられる。
最終的な各電線の鳥の数を出力せよ。
制約
1 <= n, m <= 100
1 <= 各電線の鳥の数 <= 100
考えた事
シミュレートする!
ソースコード
int main() { int N, a[110], M; cin >> N; for( int i = 1; i <= N; i++ ){ cin >> a[i]; } cin >> M; for( int i = 0; i < M; i++ ){ int x, y; cin >> x >> y; int up = y - 1; int down = a[x] - y; a[x] = 0; if( x != 1 ) a[x-1] += up; if( x < N ) a[x+1] += down; } for( int i = 1; i <= N; i++ ){ printf( "%d\n", a[i] ); } }