PTA:Python解答1066 图像过滤/1067 试密码

1066 图像过滤 (15分)

图像过滤是把图像中不重要的像素都染成背景色,使得重要部分被凸显出来。现给定一幅黑白图像,要求你将灰度值位于某指定区间内的所有像素颜色都用一种指定的颜色替换。

输入格式:

输入在第一行给出一幅图像的分辨率,即两个正整数 M 和 N(0000),其间以一个空格分隔。行首尾不得有多余空格。

输入样例:

3 5 100 150 0
3 189 254 101 119
150 233 151 99 100
88 123 149 0 255

输出样例:

003 189 254 000 000
000 233 151 099 000
088 000 000 000 255

解题思路:

这道题必须用字符串来解答,如果用int,会导致最后一个测试点偶尔超时。

完整代码:

a, b, n, m, x = [int(i) for i in input().split()]
n = str(n).rjust(3, '0')
m = str(m).rjust(3, '0')
x = str(x).rjust(3, '0')
for j in range(a):
    res = [i.rjust(3, '0') for i in input().split()]
    for k in range(b):
        if n <= res[k] <= m:
            res[k] = x
    print(' '.join(res))

 

1067 试密码 (20分)

当你试图登录某个系统却忘了密码时,系统一般只会允许你尝试有限多次,当超出允许次数时,账号就会被锁死。本题就请你实现这个小功能。

输入格式:

输入在第一行给出一个密码(长度不超过 20 的、不包含空格、Tab、回车的非空字符串)和一个正整数 N(≤ 10),分别是正确的密码和系统允许尝试的次数。随后每行给出一个以回车结束的非空字符串,是用户尝试输入的密码。输入保证至少有一次尝试。当读到一行只有单个 # 字符时,输入结束,并且这一行不是用户的输入。

输出格式:

对用户的每个输入,如果是正确的密码且尝试次数不超过 N,则在一行中输出 Welcome in,并结束程序;如果是错误的,则在一行中按格式输出 Wrong password: 用户输入的错误密码;当错误尝试达到 N 次时,再输出一行 Account locked,并结束程序。

输入样例1:

Correct%pw 3
correct%pw
Correct@PW
whatisthepassword!
Correct%pw
#

输出样例1:

Wrong password: correct%pw
Wrong password: Correct@PW
Wrong password: whatisthepassword!
Account locked

输入样例2:

cool@gplt 3
coolman@gplt
coollady@gplt
cool@gplt
try again
#

输出样例2:

Wrong password: coolman@gplt
Wrong password: coollady@gplt
Welcome in

解题思路:

用while循环时,因为用户输入#程序退出,所以要把输入是否#的判断语句放在while循环里的首位。

完整代码:

psw,N=input().split()
cnt=0
while True:
    type_in=input()
    if type_in == '#':
        break
    if type_in==psw and cnt=int(N):
        print('Account locked')
        break

 

点赞

发表评论

电子邮件地址不会被公开。必填项已用 * 标注