321
社区成员




已知字符A.B,C。每个字符都有自己的权值q。 现不知道权值q,只知道A,B,C的三次比较结果。
输入三个字符串表示三次比较的结果
输出结果,如果不存在输出”Impossible”
说实话,老顾看到这个题目是一头雾水的,什么就一个 A 就能得到ACB这个结果了?你凭啥啊?
没办法,老顾只好把用例拉出来看看,否则完全不知道啥意思啊
然后拉出来用例也是一头雾水
再然后,老顾就开始尝试,如果输入等于 ['AC'] 尝试输出一个结果,反正一共三个字母,6种组合罢了
结果。。。嘿嘿,if inp == ['AC'] 居然没有成功?
于是老顾对输入多做了一个处理
import sys
inp = [list(line.strip()) for line in sys.stdin.readlines()]
好么。。。。原来用例是 A<B A C ,然后呢, <B A 给我当 html 标签输出了,页面没显示出来?
行吧,知道问题在哪了,后边就简单了,直接建立个字典然后排序输出即可
import sys
inp = [list(line.strip()) for line in sys.stdin.readlines()]
d = {'A':0,'B':0,'C':0}
for row in inp:
if row[1] == '<':
d[row[0]] -= 1
d[row[2]] += 1
else:
d[row[2]] -= 1
d[row[0]] += 1
ans = ''.join(sorted(d,key = lambda x:d[x]))
print(ans if d[ans[0]] != d[ans[1]] and d[ans[1]] != d[ans[2]] else 'Impossible')