B 纸牌游戏
纸牌游戏
https://ac.nowcoder.com/acm/contest/7606/B
B 纸牌游戏
这个题一时冲动用写的,结果写了个死循环。。
思维题,先给数组升序,让他们有单调的性质,方便后面处理。从第一个人开始,他可以拿个牌,后面的每一个人都可以从第一个人这里拿张牌,所以显而易见,我们需要比较两个值的大小和(他左边的人数)
- 如果 ,说明这个人终究会被淘汰,拿的牌比被拿的牌少。
- 如果 ,说明这个人不会被淘汰,那么他后头的人更不会被淘汰,所以直接输出连带这个人和后面人的数量即可。
n=int(input()) lst=list(map(int,input().split())) lst.sort() for i in range(n): if lst[i]>=n-i-1: print(n-i) break