6.1.12 PUM
题目描述:
输入两个整数 N 和 M,构造一个 N 行 M 列的数字矩阵,矩阵中的数字从第一行到最后一行,按从左到右的顺序依次为 1,2,3,…,N×M。
矩阵构造完成后,将每行的最后一个数字变为 PUM。
输出最终矩阵。
输入格式:
共一行,包含两个整数 N 和 M。
输出格式:
输出最终矩阵,具体形式参照输出样例。
输入样例:
7 4
输出样例:
1 2 3 PUM 5 6 7 PUM 9 10 11 PUM 13 14 15 PUM 17 18 19 PUM 21 22 23 PUM 25 26 27 PUM
在线评测环境:AcWing 723. PUM
代码:
m, n = map(int, input().split()) tot = 0 for i in range(m): s = '' for j in range(n): tot += 1 if tot % n: s += str(tot) + ' ' else: s += 'PUM' print(s)
6.1.13 循环相克令
题目描述:
循环相克令是一个两人玩的小游戏。
令词为“猎人、狗熊、枪”,两人同时说出令词,同时做出一个动作——猎人的动作是双手叉腰;狗熊的动作是双手搭在胸前;枪的动作是双手举起呈手枪状。
双方以此动作判定输赢,猎人赢枪、枪赢狗熊、狗熊赢猎人,动作相同则视为平局。
现在给定你一系列的动作组合,请你判断游戏结果。
输入格式:
第一行包含整数 T,表示共有 T 组测试数据。
接下来 T 行,每行包含两个字符串,表示一局游戏中两人做出的动作,字符串为 Hunter, Bear, Gun 中的一个,这三个单词分别代表猎人,狗熊和枪。
输出格式:
如果第一个玩家赢了,则输出 Player1。
如果第二个玩家赢了,则输出 Player2。
如果平局,则输出 Tie。
输入样例:
3 Hunter Gun Bear Bear Hunter Bear
输出样例:
Player1 Tie Player2
在线评测环境:AcWing 763. 循环相克令
代码:
n = int(input()) r = ["Hunter", "Bear", "Gun"] for i in range (n): p1, p2 = input().split() r1 = r.index(p1) r2 = r.index(p2) if r1 == r2: print ("Tie") elif (r1 + 1) % 3 == r2: print ("Player2") else: print ("Player1")
6.1.14 字符串加空格
题目描述:
给定一个字符串,在字符串的每个字符之间都加一个空格。
输出修改后的新字符串。
输入格式:
共一行,包含一个字符串。注意字符串中可能包含空格。
输出格式:
输出增加空格后的字符串。
输入样例:
test case
输出样例:
t e s t c a s e
在线评测环境:AcWing 765. 字符串加空格
代码:
s = input() res = '' for x in list(s): res += x + ' ' print(res)
6.1.15 忽略大小写比较字符串大小
题目描述:
一般我们用 strcmp 可比较两个字符串的大小,比较方法为对两个字符串从前往后逐个字符相比较(按 ASCII 码值大小比较),直到出现不同的字符或遇到 \0 为止。
如果全部字符都相同,则认为相同;如果出现不相同的字符,则以第一个不相同的字符的比较结果为准。
但在有些时候,我们比较字符串的大小时,希望忽略字母的大小,例如 Hello 和 hello 在忽略字母大小写时是相等的。
请写一个程序,实现对两个字符串进行忽略字母大小写的大小比较。
输入格式:
输入为两行,每行一个字符串,共两个字符串。注意字符串中可能包含空格。
数据保证每个字符串的长度都不超过 80。
输出格式:
如果第一个字符串比第二个字符串小,输出一个字符 <。
如果第一个字符串比第二个字符串大,输出一个字符 >。
如果两个字符串相等,输出一个字符 =。
输入样例:
Hello hello
输出样例:
=
在线评测环境:AcWing 768. 忽略大小写比较字符串大小
代码:
a = input() b = input() a = a.lower() b = b.lower() if a == b: print('=') elif a > b: print('>') else: print('<')
6.1.16 信息加密
题目描述:
在传输信息的过程中,为了保证信息的安全,我们需要对原信息进行加密处理,形成加密信息,从而使得信息内容不会被监听者窃取。
现在给定一个字符串,对其进行加密处理。
加密的规则如下:
1.字符串中的小写字母,a 加密为 b,b 加密为 c,…,y 加密为 z,z 加密为 a。
2.字符串中的大写字母,A 加密为 B,B 加密为 C,…,Y 加密为 Z,Z 加密为 A。
3.字符串中的其他字符,不作处理。
请你输出加密后的字符串。
输入格式:
共一行,包含一个字符串。注意字符串中可能包含空格。
输出格式:
输出加密后的字符串。
输入样例:
Hello! How are you!
输出样例:
Ifmmp! Ipx bsf zpv!
在线评测环境:AcWing 767. 信息加密
代码:
s = input() c = '' for i in range (len(s)): if ( s[i] >="a" and s[i] <"z" ) or (s[i] >= "A" and s[i] <"Z"): c += chr(ord(s[i]) + 1) elif s[i] == "z": c += "a" elif s[i] == "Z": c += "A" else: c += s[i] print (c)
6.1.17 区间求和
题目描述:
输入两个整数 l 和 r,请你编写一个函数,def sum(l, r)
,计算并输出区间 [l,r] 内所有整数的和。
输入格式:
共一行,包含两个整数 l 和 r。
输出格式:
共一行,包含一个整数,表示所求的和。
输入样例:
3 5
输出样例:
12
在线评测环境:AcWing 807. 区间求和
代码:
def sum(l, r): res = 0 for i in range (l, r + 1): res += i return res m, n = map(int, input().split()) print(sum(m, n))
6.1.18 x和y的最大值
题目描述:
输入两个整数 x 和 y,请你编写一个函数,def max(x, y)
,计算并输出 x 和 y 的最大值。
输入格式:
共一行,包含两个整数 x 和 y。
输出格式:
共一行,包含一个整数,表示两个数中较大的那个数。
输入样例:
3 6
输出样例:
6
在线评测环境:AcWing 805. x和y的最大值
代码:
def max(x, y): return y if y > x else x a, b = map(int, input().split()) print(max(a, b))