找回密码
 立即注册

扫一扫,访问微社区

QQ登录

只需一步,快速开始

查看: 4354|回复: 3

[求助] 有人会做这道题吗,限时1小时

1

主题

1

帖子

1

积分

贫民

积分
1
wwang31 发表于 2021-2-18 10:25:34 | 显示全部楼层 |阅读模式
有人会做这道题吗,限时1小时

有人会做这道题吗,限时1小时

有人会做这道题吗,限时1小时
回复

使用道具 举报

1419

主题

1891

帖子

291

积分

侠客

积分
291

最佳新人热心会员默默耕耘

whydo1 发表于 2021-8-9 11:15:22 | 显示全部楼层
把数据读取到列表中
la = [3,'a',30,'b',40,'c',30']
lb = la[1::2]
lc = la[2::2]
winner = lb[la.index(max(la))]
回复 支持 1 反对 0

使用道具 举报

0

主题

102

帖子

102

积分

侠客

积分
102
傻眼貓咪 发表于 2021-8-4 17:58:41 | 显示全部楼层
  1. N = int(input())

  2. Auction = [{}]*N

  3. for n in range(N):
  4.     name = input()
  5.     bid = int(input())
  6.     Auction[n] = {'Bid': bid, 'Index': n, 'Name': name}

  7. def getBid(person):
  8.     return person.get('Bid')

  9. Auction.sort(key=getBid, reverse=True)

  10. def winner():
  11.     for i in range(N):
  12.         if i:
  13.             if Auction[i] == Auction[i-1]:
  14.                 return Auction[i]['Name']
  15.                 break
  16.     return Auction[0]['Name']
  17. print(winner())
复制代码
回复 支持 反对

使用道具 举报

0

主题

2

帖子

2

积分

贫民

积分
2
pbfans 发表于 2021-8-9 08:30:29 | 显示全部楼层
  1. N = int(input('Total bidders:'))

  2. Auctioners = [{}]*N

  3. for n in range(N):
  4.     name = input('Name:')
  5.     bid = int(input('Bid:'))
  6.     Auctioners[n] = {'name': name, 'bid': bid, 'index': n}

  7. Auctioners_s = sorted(Auctioners, key=lambda i: (i['bid'], i['index']), reverse=True)

  8. winner = []
  9. maxbid = Auctioners_s[0]['bid']
  10. for a in Auctioners_s:
  11.     if int(a['bid']) == maxbid:
  12.         winner.append(a)
  13. Auctioners_w = sorted(winner, key = lambda i : i['index'])

  14. #print(Auctioners_s)
  15. #print(Auctioners_w)

  16. print('Winner: ', Auctioners_w[0]['name'])
复制代码
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表