C.Bit Transmission
表示当前位置回答 YES 的数量。
表示当前位置回答 NO 的数量。
输出 的情况:
( )
还有这种 那个位置可能是机器人说谎的结果 你也不知道它到底说没说谎 所以确定不了。
#include <bits/stdc++.h>
using namespace std;
void solve() {
int n;
cin >> n;
vector<vector<int>> a(n, vector<int>(2));
for (int i = 0; i < 3 * n; i++) {
int pos;
string s;
cin >> pos >> s;
if (s == "YES") {
a[pos][0]++;
} else {
a[pos][1]++;
}
}
for (int i = 0; i < n; i++) {
if (a[i][0] == a[i][1]) {
cout << -1 << '\n';
return;
}
}
for (int i = 0; i < n; i++) {
if (a[i][0] + a[i][1] == 1) {
cout << -1 << '\n';
return;
}
}
for (int i = 0; i < n; i++) {
if (a[i][0] > a[i][1]) {
cout << 1;
} else {
cout << 0;
}
}
cout << '\n';
}
int main() {
ios::sync_with_stdio(false);
cin.tie(nullptr);
cout.tie(nullptr);
int tt = 1;
//cin >> tt;
while (tt--) {
solve();
}
return 0;
}