第一题

AC代码

import sys 
opt_num = 0
init_ing = 0
scores = 0
for line in sys.stdin:
    cmd = line.split()
    if opt_num == 0:
        student_num, opt_num = list(map(lambda x:int(x), cmd))
        init_ing = 1
        continue
    if init_ing == 1:
        scores = list(map(lambda x:int(x), cmd))
        init_ing = 0
        continue
    if cmd[0] == 'Q':
        print(max(scores[ min(int(cmd[1]),int(cmd[2]))-1 : max(int(cmd[1]),int(cmd[2])) ]))
        opt_num -= 1
    if cmd[0] == 'U':
        scores[int(cmd[1])-1] = int(cmd[2])
        opt_num -= 1

第二题

AC代码

有序字典collections.OrderedDict()方法

import collections
import sys
logs = collections.OrderedDict()
k_num = 0
for line in sys.stdin:
    line_list = line.split(' ')
    name = line_list[0].split('\\')[-1]
    name_l_num = name[-16:] + ' ' + line_list[1]
    if name_l_num in logs.keys():
        logs[name_l_num] += 1
    else:
        logs[name_l_num] = 1
        k_num += 1

items = sorted(logs.items(),key=lambda x:x[1], reverse=True)
for j,i in enumerate(items):
    if j > 7: break
    print(i[0][:-1]+' '+str(i[1]))

部分测试用例

e:\1\aa3.txt 3
e:\3\aa1.txt 2
e:\2\aa2.txt 3
e:\3\aa1.txt 1
e:\1\aa1.txt 3
e:\3\aa1.txt 2
e:\1\aa3.txt 3
e:\2\aa3.txt 2
e:\1\aa1.txt 2
e:\3\aa3.txt 2
e:\1\aa2.txt 2
e:\1\aa3.txt 1
e:\1\aa3.txt 1
e:\2\aa3.txt 2
e:\1\aa2.txt 1
e:\3\aa1.txt 2
e:\1\aa1.txt 3
e:\2\aa1.txt 1
e:\3\aa3.txt 2
e:\1\aa1.txt 1
e:\2\aa2.txt 2
e:\3\aa3.txt 2
e:\1\aa2.txt 1
e:\1\aa3.txt 2
e:\1\aa3.txt 3
e:\1\aa2.txt 3
e:\3\aa1.txt 3
e:\2\aa2.txt 2
e:\1\aa1.txt 1
e:\2\aa3.txt 1
e:\3\aa1.txt 1
e:\2\aa1.txt 3
e:\3\aa3.txt 2
e:\1\aa3.txt 3
e:\2\aa3.txt 3
e:\1\aa2.txt 3
e:\2\aa2.txt 1
e:\1\aa3.txt 1
e:\1\aa3.txt 1
e:\3\aa3.txt 3
e:\3\aa3.txt 2
e:\1\aa2.txt 3
e:\1\aa2.txt 3
e:\1\aa2.txt 3
e:\1\aa1.txt 1
e:\2\aa3.txt 1
e:\3\aa3.txt 1
e:\2\aa3.txt 2
e:\3\aa1.txt 3
e:\2\aa2.txt 2
e:\2\aa2.txt 2
e:\2\aa3.txt 1
e:\1\aa3.txt 3
e:\3\aa1.txt 2
e:\3\aa2.txt 2
e:\1\aa2.txt 1
e:\2\aa2.txt 1
e:\2\aa1.txt 2
e:\2\aa2.txt 1
e:\1\aa2.txt 1
e:\2\aa3.txt 1
e:\2\aa2.txt 1
e:\2\aa1.txt 2
e:\3\aa2.txt 3
e:\3\aa1.txt 3
e:\2\aa2.txt 3
e:\2\aa3.txt 1
e:\3\aa3.txt 2
e:\2\aa3.txt 1
e:\1\aa1.txt 2
e:\3\aa3.txt 1
e:\3\aa1.txt 1
e:\2\aa2.txt 3
e:\3\aa3.txt 2
e:\2\aa1.txt 3
e:\1\aa3.txt 3
e:\3\aa2.txt 1
e:\2\aa1.txt 3
e:\1\aa3.txt 3
e:\2\aa2.txt 2
e:\1\aa1.txt 2
e:\3\aa1.txt 1
e:\1\aa3.txt 1
e:\3\aa1.txt 2
e:\1\aa1.txt 2
e:\1\aa1.txt 3
e:\3\aa1.txt 1
e:\3\aa1.txt 1
e:\2\aa3.txt 3
e:\2\aa2.txt 1
e:\2\aa1.txt 2
e:\2\aa2.txt 1
e:\3\aa2.txt 3
e:\1\aa2.txt 1
e:\3\aa2.txt 2
e:\2\aa1.txt 1
e:\2\aa3.txt 3
e:\1\aa1.txt 2
e:\1\aa1.txt 1
e:\1\aa1.txt 2
aa1.txt 2 14
aa3.txt 1 13
aa1.txt 1 12
aa2.txt 1 12
aa3.txt 3 11
aa3.txt 2 11
aa2.txt 3 10
aa1.txt 3 9

第三题

AC代码

import sys
import re

def str2int(i):
    if i == 't':
        return 10
    if i == 'J':
        return 11
    if i == 'Q':
        return 12
    if i == 'K':
        return 13
    if i == 'A':
        return 14
    if i == '2':
        return 15
    if i == 'w':
        return 16
    if i == 'W':
        return 17
    else:
        return int(i)

def compare(hand1, hand2):
    if 'joker' in hand1 and 'JOKER' in hand1:
        return hand1
    elif 'joker' in hand2 and 'JOKER' in hand2:
        return hand2
    h1 = hand1.replace(' ','')
    h1 = h1.replace('joker','w')
    h1 = h1.replace('JOKER','W')
    h1 = h1.replace('10','t')
    h2 = hand2.replace(' ','')
    h2 = h2.replace('joker','w')
    h2 = h2.replace('JOKER','W')
    h2 = h2.replace('10','t')

    h1_list = list(map(str2int, h1))
    h2_list = list(map(str2int, h2))

    if len(h1_list) == 4 and len(h2_list) == 4:
        return hand1 if h1_list[0] > h2_list[0] else hand2
    elif len(h1_list) == 4:
        return hand1
    elif len(h2_list) == 4:
        return hand2

    if len(h1_list) != len(h2_list):
        return 'ERROR'

    return hand1 if h1_list[0] > h2_list[0] else hand2

for line in sys.stdin:
    hand1, hand2 = line.strip('\n').split('-')
    if not hand1 and not hand2:
        sys.stdout.write('ERROR')
    else:
        sys.stdout.write(compare(hand1, hand2))

部分测试用例

4-A
A
10 10 10 10-joker JOKER
joker JOKER
最后修改日期: 2020年4月7日

作者

留言

撰写回覆或留言

发布留言必须填写的电子邮件地址不会公开。