AT_xmascon16_e Examination, Estimation
题目描述
兔子即将参加一场包含 50 个题目的考试。每个题目都是四选一的选择题,选项为 0, 1, 2, 3,其中只有一个是正确答案,其他都是错误答案。
在兔子参加考试之前,有 30 条鳗鱼已经参加了同样的考试。每条鳗鱼的答题方式分为以下三种类型之一,并且每种类型分别有 10 条鳗鱼:
1. 每个题目有 $\frac{2}{3}$ 的概率选择正确答案,$\frac{1}{3}$ 的概率随机选择一个错误答案。
2. 每个题目有 $\frac{1}{3}$ 的概率选择正确答案,$\frac{2}{3}$ 的概率随机选择一个错误答案。
3. 每个题目以相等的概率随机选择四个选项中的一个。
由于试题使用了鳗鱼的语言,兔子无法独立完成这次考试。然而,兔子通过超能力作弊偷看了所有鳗鱼的答案。可它并不知道每条鳗鱼是哪种类型。使用这些信息,尽量多地猜出正确答案。
输入格式
输入是从标准输入中以以下形式给出的:
> $A_{1,1} \; A_{1,2} \; \cdots \; A_{1,50}$ $A_{2,1} \; A_{2,2} \; \cdots \; A_{2,50}$ : $A_{30,1} \; A_{30,2} \; \cdots \; A_{30,50}$(以上是一个考试的数据,还有 199 组相同格式的数据)
其中 $A_{i,j}$ 代表第 $i$ 条鳗鱼对第 $j$ 题的回答,答案是 0, 1, 2, 3 中的一个。
输出格式
输出 200 行。第 $i$ 行($1 \leq i \leq 200$)表示第 $i$ 次考试的预测答案。
每个考试的预测答案是由 50 个空格分隔的整数(值域为 0, 1, 2, 3)组成的。第 $j$ 个整数对应第 $j$ 个题目的答案。
说明/提示
### 评分标准
每个输入数据包含 200 个测试案例,每个案例对应一次考试。
如果某次考试中猜错的答案不超过 3 个,则该考试视为合格。
如果一组输入数据中至少有 90%的考试(即至少 180 次)合格,则视为解答正确。
总共有 10 组输入数据,全部正确可以获得 100 分。
每次考试的数据是通过先随机选择正确答案,再随机选择鳗鱼类型生成的。虽然有具体的生成方法介绍,但存在一种算法可以在不依赖这些具体信息的情况下得到满分,因此并不需要关注生成方法的细节。
### 生成数据程序
这些数据是由以下 C++ 程序生成的:
```cpp
#include
#include
using namespace std;
uint32_t x = 123456789, y = 362436069, z = 521288629, w = 88675123;
uint32_t xor128() {
uint32_t t = x ^ (x > 19)) ^ (t ^ (t >> 8));
}
int randint(int lo, int hi) {
uint64_t v = ((uint64_t)xor128() = 1; --i) {
swap(eel_type[i], eel_type[randint(0, i)]);
}
for (int i = 0; i < N; ++i) {
int eel_answer[Q];
for (int j = 0; j < Q; ++j) {
bool correct = false;
if (eel_type[i] == 0) correct = randint(0, 2) != 0;
if (eel_type[i] == 1) correct = randint(0, 2) == 0;
if (eel_type[i] == 2) correct = randint(0, 3) == 0;
if (correct) {
eel_answer[j] = correct_answer[j];
} else {
eel_answer[j] = (correct_answer[j] + randint(1, 3)) % 4;
}
}
for (int j = 0; j < Q; ++j) {
printf("%d%c", eel_answer[j], j+1 == Q ? '\n' : ' ');
}
}
}
int main() {
cin >> w;
for (int i = 0; i < 10000; ++i) {
xor128();
}
for (int t = 0; t < 200; ++t) {
generate();
}
return 0;
}
```
### 样例解释 1
请注意,实际的数据包含后续 199 次考试的数据,这里仅展示第一次考试。在本例中,输出答案是完全正确的(该样例可用于本地调试)。
**本翻译由 AI 自动生成**