科大讯飞 编程题:选课,再次刷新了笔试题难度……
只能AC 30%,没提示时间超限,找不到哪里有问题………………
class course(object): def __init__(self, time, name): self.time = time self.name = name def insert(l, cou): if len(l) == 0: l.append(cou) else: for i in range(len(l)): if cou.time > l[i]: continue else: l.insert(i, cou) break n = int(raw_input().split()[0]) cou_list = [] for i in range(n): t = raw_input().split() cou_list.append(course(int(t[0]), t[1])) result_list = [] for i in range(len(cou_list)): for j in range(i + 1, len(cou_list)): if cou_list[i].time == cou_list[j].time: cou_list[i].name = cou_list[i].name + ' ' + cou_list[j].name insert(result_list, cou_list[i]) if result_list == []: print('YES') else: for i in result_list: print(str(i.time) + ' ' + i.name)