【题解】取余运算
【题目描述】
输入b,p,k的值,求bp mod k的值。其中b,p,k×k为长整型数。
【输入描述】
输入b,p,k的值。
【输出描述】
求 b^p mod k的值。
【样例输入】
2 10 9
【样例输出】
2^10 mod 9=7
【题目描述】
输入b,p,k的值,求bp mod k的值。其中b,p,k×k为长整型数。
【输入描述】
输入b,p,k的值。
【输出描述】
求 b^p mod k的值。
【样例输入】
2 10 9
【样例输出】
2^10 mod 9=7
【问题描述】
在郊区有N座通信基站,P条双向电缆,第 i 条电缆连接基站 A_i 和 B_i。特别地,1号基站是通信公司的总站,N号基站位于一座农场中。现在,农场主希望对通信线路进行升级,其中升级第 i 条电缆需要花费 L_i。
电话公司正在举行优惠活动。农场主可以指定一条从1号基站到N号基站的路径,并指定路径上不超过K条电缆,由电话公司免费提供升级服务。农场主只需要支付在该路径上剩余的电缆中,升级价格最贵的那条电缆的花费即可。
求最少用多少钱能完成升级。
【输入】
第一行,3个空格隔开正整数N,P,K。
以下P行:每行是:Ai, Bi, Li
【输出】
最少的升级花费。
line.in | line.out |
5 7 1 1 2 5 3 1 4 2 4 8 3 2 3 5 2 9 3 4 7 4 5 6 | 4 |
【数据范围】
30%的数据:1 ≤ N ≤ 50,1 ≤ P ≤ 200;
100%的数据:1 ≤ N ≤ 1,000;1 ≤ P ≤ 10,000;1 ≤ Li ≤ 1,000,000;0 ≤ K < N。
【来源】
2019年青岛市程序设计竞赛试题(初中组)4T
【题目描述】
大雨过后,从小A的农场到镇上的公路上有一些泥泞路段,为了方便出行,他决定将若干块长度为L的木板可以铺在这些泥泞路段上,问他至少需要多少块木板,才能将所有的泥泞路段覆盖住。
【输入】
第一行为正整数n(n≤10000)和L(L≤10000),分别表示有多少段泥泞路和木板的长度;接下来n行,每一行两个整数s和e(s≤e≤109),表示每一段泥泞路的起点和终点。
【输出】
仅一个正整数,表示使用的木板数。
【输出】
仅一个正整数,表示木板数。
【样例输入输出】
cover.in | cover.out |
3 3 1 6 13 17 8 12 | 5
|
【数据范围】
60%的数据:n<=1000;
100%的数据:n<=100000,L<=10000, s≤e≤109。
【来源】
2019年青岛市程序设计竞赛试题(初中组)3T
【问题描述】
给定n,以及正整数序列a1,a2,…,an与b1,b2,…,bn。
令:
sa=a1*a2*…*an
sb=b1*b2*…*bn
求sa和sb的最大公约数gcd(sa,sb)。
【输入】
第一行n。
第二行,序列a1,a2,…,an。两个数之间用空格隔开。
第三行,序列b1,b2,…,bn。两个数之间用空格隔开。
【输出】
sa和sb的最大公约数,结果%10007。
【输入输出样例】
gcd.in | gcd.out |
3 12 15 70 20 75 49 | 2100 |
【数据范围】
测试点 | n范围 | ai,bi,sa,sb |
1 | 1<=n<=5 | 1<=ai,bi<=10000; sa,sb<109 |
2 | ||
3 | ||
4 | 10<=n<=100 | 1<=ai,bi<=10000; sa,sb<10400。 |
5 | ||
6 | ||
7 | ||
8 | ||
9 | ||
10 |
【来源】
2019年青岛市程序设计竞赛试题(初中组)2T
【描述】
真分数,指的是分子比分母小的分数,真分数的分数值小于1。
给出n个正整数,任取两个数分别作为分子和分母组成真分数。
求能组成多少不同值的真分数。
【输入】
第一行是一个正整数n。
第二行是n个不同的正整数ai,相邻两个整数之间用单个空格隔开。
【输出】
一个整数,即最简真分数组合的个数。
【样例输入输出】
fraction.in | fraction.out |
4 1 2 3 4 | 5
|
样例说明:共组成6个真分数:1/2,1/3,1/4,2/3,2/4,3/4。
但是这6个真分数有5个不同的值:1/2,1/3,1/4,2/3,3/4。因为1/2和2/4的值相同.
【数据范围】
100%的数据:1<=ai<=1000,n<=600。
【来源】
2019年青岛市程序设计竞赛试题(初中组)1T
【题目描述】
小D从家到学校的道路结构是这样的:由n条东西走向和m条南北走向的道路构成了一个n*m的网格,每条道路都是单向通行的(只能从北向南,从西向东走)。
已知小D的家在网格的左上角,学校在网格的右下角。
问小D从他的家到学校一共有多少种不同的上学路线?
【输入格式】
两个正整数n,m,意义如前所述。
【输出格式】
小D上学路线数量。结果对1000000007取余。
【输入输出样例】
roud.in | roud.out |
3 4 | 10 |
【数据规模和约定】
50%的数据:n,m<=20;
100%的数据: n,m<=1000。
【来源】
2019年青岛市程序设计竞赛试题(小学组)1T
【问题描述】
输入十进制正整数n和k,输出n的k进制数。
我们熟悉的十进制所需的10个基数(基本的数字符号)是0,1,2,3,4,5,6,7,8,9。
当10<k<=16时,k进制的k个基数从小到大分别依次是:0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F中的前k个符号。
如n=6,k=2时,6的2进制表示是110。
如n=30,k=16时,30的16进制表示是1E。
【输入】
一行,n和k,中间一个空格隔开。
【输出】
一行,n的k进制数。
【样例输入输出】
change.in | change.out |
1024 2 | 10000000000 |
【数据规模和约定】
50%的数据: 2<=k<=10;
100%的数据: 0<n<=1018;2<=k<=16。
【来源】
2019年青岛市程序设计竞赛试题(小学组)3T
【问题描述】
文件加密最简单的方法是把文件的原文中的每个字母用另一个字母来代替。
假设原文中只包括26个英文字母(有大写和小写),没有其他符号,且长度不超过100,加密规则如下:
原文 | a | b | c | d | e | f | g | h | i | j | k | l | m | n | o | p | q | r | s | t | u | v | w | x | y | z |
密文 | y | z | a | b | c | d | e | f | g | h | i | j | k | l | m | n | o | p | q | r | s | t | u | v | w | x |
原文 | A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z |
密文 | Y | Z | A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X |
【输入】
一行字符串,代表原文,仅由大小写英文字母构成。
【输出】
一行字符串,原文加密后的密文。
【样例输入输出】
jm.in | jm.out |
abD | yzB |
【来源】
2019年青岛市程序设计竞赛试题(小学组)2T
【问题描述】
给你n个正整数a1,a2,..,an。
求(a1*a2*..an)%10007的值。
【输入】
第一行,n,表示整数的个数。
第二行,n个用空格隔开的正整数。
【输出】
一个整数,(a1*a2*..an)%10007的值。
【样例输入输出】
mod.in | mod.out |
2 10 20 | 200 |
【数据规模和约定】
30%的数据:a1*a2*..*an<2000000000;
100%的数据:n<=1000, 0<ai<=110。
【来源】
2019年青岛市程序设计竞赛试题(小学组)1T