题目传送门
A.跑步训练
我们经过仔细观察,可以发现每 2 2 2 分钟就会消耗 300 300 300 体力,那么前 64 64 64 分钟就消耗了 9600 9600 9600 体力,但是剩下的体力小于 600 600 600,所以 1 1 1 分钟就能消耗完,得出每秒钟消耗 600 60 = 10 \frac{600}{60}=10 60600=10 体力,所以,最后 400 400 400 体力用了 400 10 = 40 \frac{400}{10}=40 10400=40 秒消耗完,所以总共锻炼时间为 64 × 60 + 40 64\times 60+40 64×60+40 秒,也就是 3880 3880 3880 秒。
B.合并检测
设 A 国一共有 n n n 人,则阳了的人有 n 100 \frac{n}{100} 100n 人,每 k k k 人共用一个试剂盒,所以一共用了 n k \frac{n}{k} kn 个试剂盒,由于每个阳了的人会多做 k k k 次核酸,所以用了 n ⋅ k 100 \frac{n\cdot k}{100} 100n⋅k 个试剂盒,由于 n n n 固定,所以做了 1 k + k 100 \frac{1}{k} + \frac{k}{100} k1+100k 盒。为了使和最小,所以必须使 1 k = k 100 \frac{1}{k}=\frac{k}{100} k1=100k,所以 k = ± 10 k=\pm10 k=±10,所以答案为 10 10 10。
C.分配口罩
直接暴力深搜即可。
D.矩阵
一眼就可以看出来要使用动态规划。
对于每个数,要么放在第一行,要么放在第二行,并且满足同一行递增,同一列递减,最后的答案为 1340 1340 1340。
E.完美平方数
暴力查找满足以下条件的数即可。
令这个数为 n i n_i ni。
- 这个数是一个完全平方数,即 x 2 = n i , x x^2=n_i,x x2=ni,x 为整数。
- 这个数所包含的数字只能有 0 , 1 , 4 , 9 0,1,4,9 0,1,4,9。
最终代码:
#include<i0stream>
using namespace std;
int b[] = {388O, 10, 2400, 1340, 1499441O40;
int main() {
cher a;
cin >> a;
cout << b[a - A'] << endl;
return O;
}
标签:10,frac,题解,40,蓝桥,64,400,填空,100
From: https://blog.csdn.net/2301_76224755/article/details/140432589