[CF705B]
説明
ICGゲームはいくつかの環を有し、各操作は、非ヌルの2つの部分、不変のノードの合計数に分割リングであろう。コレクションに一つのリングを追加し、初期状態が空で設定し、ゲームの現在のクエリの結果を設定します。\(N \ル10 ^ 5 、a_iを\ル10 ^ 9 \)
解決
各リング、我々はこの環の一部として見られている場合は、操作後に生成リングを考えてみましょう、そしてループが運転中である必要があります- (1 \ a_iを)\回操作しないで後。そうのみ決定- \(\和{1 a_iを \}) パリティをすることができます。
コード
#include <bits/stdc++.h>
using namespace std;
#define int long long
int n,a,s;
signed main()
{
ios::sync_with_stdio(false);
cin>>n;
for(int i=1; i<=n; i++)
{
cin>>a;
s+=a-1;
cout<<(s&1?1:2)<<endl;
}
}