(每日一练28800)题目名称:豚鼠排名榜

文盲老顾
WEB应用领新星创作者
博客专家认证
2023-04-23 13:13:19

已知字符A.B,C。每个字符都有自己的权值q。 现不知道权值q,只知道A,B,C的三次比较结果。

输入三个字符串表示三次比较的结果

输出结果,如果不存在输出”Impossible”

img

说实话,老顾看到这个题目是一头雾水的,什么就一个 A 就能得到ACB这个结果了?你凭啥啊?

没办法,老顾只好把用例拉出来看看,否则完全不知道啥意思啊

然后拉出来用例也是一头雾水

img

再然后,老顾就开始尝试,如果输入等于 ['AC'] 尝试输出一个结果,反正一共三个字母,6种组合罢了

结果。。。嘿嘿,if inp == ['AC'] 居然没有成功?

于是老顾对输入多做了一个处理

import sys
inp = [list(line.strip()) for line in sys.stdin.readlines()]

img

好么。。。。原来用例是 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')
...全文
115 回复 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

321

社区成员

发帖
与我相关
我的任务
社区描述
主要用于技术交流,包括但不限于 .net,mssql,js,css,python,算法,运维。也可以晒最新技术,美图,运动等。最后,如果有问题,可以提问,老顾能帮忙的会尽量帮忙哦。
前端sqlserverasp.net 技术论坛(原bbs) 北京·西城区
社区管理员
  • 文盲老顾
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧