题解P8760
fkcufk
·
·
题解
P8760 [蓝桥杯 2021 国 C] 填空问题
第一题分析
最大的八位二进制数是 11111111,因为二进制数每一位最大为 1。
一般表示就是十进制。转换后的结果为 2^8-1=255。
第二题分析
### 第三题分析
我们可以使用线性筛解,不会的可以看[这道题](https://www.luogu.com.cn/problem/P3383)。
结果: $1$ 到 $20210605$ 中有 $1903$ 个质数。
### 第四题分析
我们把 $2001$ 年 $1$ 月 $1$ 日到 $2021$ 年 $12$ 月 $31$ 日 的每一天遍历一遍即可。
结果:$977$。
### 第五题分析2
我们可以使用题目中给出的动态转移方程即可。
转换成代码如下:
```cpp
f[i]=min(f[i],1+f[j]*2+f[i-j-1]*3+j*j*(i-j-1));
```
结果:$2653631372$。
接下来附上总代码。
~~无注释,专给 ctjer 的代码。~~
```cpp
#include<iostream>
using namespace std;
int main(){
string ans[] = {
"255",
"25",
"1903",
"977",
"2653631372"
};
char T;
cin >> T;
cout << ans[T - 'A'];
return 0;
}
```