试题 A: 指数计算
本题总分:5 分
【问题描述】
7 月1日是建党日,从1921年到2020年, 已经带领中国人民
走过了 99 年。
请计算:7 ^ 2020 mod 1921,其中A mod B表示A除以B的余数。
【答案提交】
这是一道结果填空题,你只需要算出结果后提交即可。本题的结果为一个
整数,在提交答案时只填写这个整数,填写多余的内容将无法得分。
package第十一届蓝桥杯;importjava.math.BigInteger;public classA指数计算 {public static voidmain(String[] args) {
BigInteger num1= new BigInteger("7");
BigInteger num2= new BigInteger("1921");
BigInteger num3=num1.pow(2020).remainder(num2);
System.out.println(num3);
}
}
试题 B: 解密
本题总分:5 分
【问题描述】
小明设计了一种文章加密的方法:对于每个字母 c,将它变成某个另外的
字符 Tc。下表给出了字符变换的规则:
字母c
Tc
字母c
Tc
字母c
Tc
字母c
Tc
a
y
n
l
A
Y
N
L
b
x
o
g
B
X
O
G
c
m
p
o
C
M
P
O
d
d
q
u
D
D
Q
U
e
a
r
f
E
A
R
F
f
c
s
s
F
C
S
S
g
i
t
z
G
I
T
Z
h
k
u
p
H
K
U
P
i
n
v
w
I
N
V
W
j
t
w
b
J
T
W
B
k
j
x
r
K
J
X
R
l
h
y
e
L
H
Y
E
m
q
z
v
M
Q
Z
V
例如,将字符串 YeRi 加密可得字符串EaFn。
小明有一个随机的字符串,加密后为
EaFnjISplhFviDhwFbEjRjfIBBkRyY
(由 30 个大小写英文字母组成,不包含换行符),请问原字符串是多少?
(如果你把以上字符串和表格复制到文本文件中,请务必检查复制的内容
是否与文档中的一致。在试题目录下有一个文件 str.txt,第一行为上面的字符
串,后面 52 行依次为表格中的内容。)
【答案提交】
这是一道结果填空题,你只需要算出结果后提交即可。本题的结果为一个
只包含 30 个大小写英文字母的字符串,在提交答案时只填写这个字符串,填写
多余的内容将无法得分。
package第十一届蓝桥杯;importjava.util.HashMap;importjava.util.Scanner;public classB解密 {public static voidmain(String[] args) {
HashMap map = new HashMap<>();
Scanner sc= newScanner(System.in);for (int i = 0;i<52;i++){char a = sc.next().trim().charAt(0);char b = sc.next().trim().charAt(0);
map.put(b,a);
}
String s=sc.next();
sc.close();char[] num =s.toCharArray();for (charc:num){
System.out.print(map.get(c));
}
}
}
输入
a y n l A Y N L
b x o g B X O G
c m p o C M P O
d d q u D D Q U
e a r f E A R F
f c s s F C S S
g i t z G I T Z
h k u p H K U P
i n v w I N V W
j t w b J T W B
k j x r K J X R
l h y e L H Y E
m q z v M Q Z V
EaFnjISplhFviDhwFbEjRjfIBBkRyY
试题 C: 跑步训练
本题总分:10 分
【问题描述】
小明要做一个跑步训练。
初始时,小明充满体力,体力值计为 10000。如果小明跑步,每分钟损耗
600 的体力。如果小明休息,每分钟增加300的体力。体力的损耗和增加都是
均匀变化的