#include <bits/stdc++.h>
int main() {
int n, t;
double p;
std::cin >> n >> p >> t;
if (t == 1) {
std::vector<bool> ans(n);
for (int i = 0; i < n; ++i) {
std::cout << "Q ";
for (int j = 0; j < n; ++j) {
std::cout << (i == j);
}
std::cout << std::endl;
char c;
std::cin >> c;
ans[i] = c == 'P';
}
std::cout << "A ";
for (int i = 0; i < n; ++i) {
std::cout << ans[i];
}
std::cout << std::endl;
char c;
std::cin >> c;
return 0;
}
while (t--) {
std::vector<bool> ans(n);
for (int i = 0; i < n; ++i) {
auto idx = *std::ranges::partition_point(std::views::iota(i, n), [&](int j) {
std::vector<bool> q(n);
for (int idx = i; idx <= j; ++idx) {
q[idx] = true;
}
std::cout << "Q ";
for (int i = 0; i < n; ++i) {
std::cout << q[i];
}
std::cout << std::endl;
char c;
std::cin >> c;
return c == 'N';
});
ans[idx - 1] = true;
i = idx;
}
std::cout << "A ";
for (int i = 0; i < n; ++i) {
std::cout << ans[i];
}
std::cout << std::endl;
char c;
std::cin >> c;
}
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |