身份证验证-乙级题目

Posted zju21860

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了身份证验证-乙级题目相关的知识,希望对你有一定的参考价值。

n=int(input())
a=[]
while n>0:
    st=input()
    a.append(st)
    n=n-1
b=[7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2]
M=[‘1‘,‘0‘,‘X‘,‘9‘,‘8‘,‘7‘,‘6‘,‘5‘,‘4‘,‘3‘,‘2‘]
res=[]
for st in a:
    c=0
    if ‘X‘ in st[:18]:
        res.append(st)
        continue
    for i in range(len(st)-1):
        c=c+int(st[i])*b[i]
    if c%11!=M.index(st[17]):
        res.append(st)
if len(res)==0:
    print("All passed")
else:
    for i in res:
        print(i)

 这个答案没有通过所有的测试点,但是这个题并不算难,乙级题目。

以上是关于身份证验证-乙级题目的主要内容,如果未能解决你的问题,请参考以下文章

PAT乙级1049 数列的片段和 (20 分)

PAT-乙级-1031 查验身份证

PAT乙级1031 查验身份证 (15 分)

PTA乙级 (1049 数列的片段和 (20分))

PAT 乙级 1005

PAT 乙级 1005. 继续(3n+1)猜想 (25)