3251: 不太随机的随机数列

内存限制:128 MB 时间限制:1.000 S
评测方式:文本比较 命题人:
提交:53 解决:18

题目描述

## 题目描述 33DAI 想要生成一个比较随机的数列,但是他忘记了比较好的随机数生成器该怎么写了,于是写下了下面这串代码。 ```cpp #include <bits/stdc++.h>using namespace std; int main() { int seed = 33; while (1) { cout << seed << "\n"; seed = seed * seed % 233; } return 0; } ``` 显然这串代码在运行后会陷入死循环,一直不停地输出,每行会输出一个整数。请你帮他算算他输出的第 $x$ 行是多少。 ## 输入格式 第一行一个整数 $x$。 ## 输出格式 输出一个整数,即上面代码输出的第 $x$ 行的内容。 ```input1 1 ``` ```output1 33 ``` ```input2 3 ``` ```output2 184 ``` ```input3 16 ``` ```output3 46 ``` ## 样例解释 上方代码输出的前 16 行如下: ``` 33 157 184 71 148 2 4 16 23 63 8 64 135 51 38 46 ``` ## 数据规模与约定 对于 $100\%$ 的数据,$1 \le x \le 10^{12}$。 - 子任务 1(30 分):$1\le x\le 100$ - 子任务 2(30 分):$x = 10^9$ - 子任务 3(40 分):没有特殊限制。