3 条题解
-
0
易错点解析详见代码部分注释 《警钟长鸣》(外网记得修改网址)
附上题解:
cnt = [0]*30 max_len = 0 for _ in range(4): # 此处糖点详见上贴 s = input() for i in s: if 'A'<=i and i<='Z': cnt[ord(i)-ord('A')] += 1 max_len = max(max_len, cnt[ord(i)-ord('A')]) for i in range(max_len): s = "" for j in range(26): if i < max_len-cnt[j]: # 这里的条件要想清楚 # 说实话建议用倒序 s += " " else: s += "* " k = 2*26-1 while k>=0 and s[k]==' ': # k>=0 不要忘,否则可能会越界 k-=1 print(s[:k+1]) # 去除行末空格可以直接用切片(而不是像我一开始用的古老for循环()) for i in range(ord('A'), ord('Z')): print(chr(i)+' ', end='') print('Z')
信息
- ID
- 709
- 时间
- 1000ms
- 内存
- 256MiB
- 难度
- 6
- 标签
- 递交数
- 23
- 已通过
- 10
- 上传者