阿里笔试0804 跪求!求问各位大佬 这为啥是0ac

第一题做到这里0ac 心态崩了 怎么也该有个10%吧 二分没有心情写了 孩子没了

n, m = map(int, input().split())
person = list(map(int, input().split()))
house = []
for i in range(m):
    house.append(list(map(int, input().split())))
person = sorted(person,reverse = True)
house = sorted(house, key = lambda x:x[0], reverse = True)
ans = []
visited = []
for i in range(n):
    conf = float('-inf')
    idx = -1
    for j in range(m):
        if person[i]>=house[j][1] and house[j][0]>=conf and j not in visited:
            conf = house[j][0]
            idx = j
            break
    if idx!=-1:
        visited.append(idx)
        ans.append(conf)
if ans == []:
    print(0)
else:
    print(sum(ans))

            
            

#笔试题目##阿里巴巴#
全部评论
我也挂了,第二题我想到了一个方法。把字符串分成只含有a/c/e和只含有b/d/f的两个字符串。既然一定要a<c<e;b<d<f;那么是不是可以看成分别求出这两个字符串的“最长的增序列”呢?然后输出两个最长增序列的长度之和即可
2 回复 分享
发布于 2020-08-03 20:41
我把题解写了,感兴趣的同学可以互相交流一下  https://www.nowcoder.com/discuss/466066?source_id=profile_create&channel=666
点赞 回复 分享
发布于 2020-08-03 21:03
我用优先队列过的
点赞 回复 分享
发布于 2020-08-03 20:17
好吧 求解了一下大佬 复杂度过高 用二分能降点 题目确实也说了都是大数
点赞 回复 分享
发布于 2020-08-03 20:16

相关推荐

见见123:简历没有啥问题,是这个社会有问题。因为你刚毕业,没有工作经历,现在企业都不要没有工作经历的。社会病了。
点赞 评论 收藏
分享
06-14 19:09
门头沟学院 Java
darius_:给制造业搞的,什么物料管理生产管理,设备管理点检,最最关键的就是一堆报表看板。个人觉得没啥技术含量都是些基本的crud,但是业务很繁琐那种
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
07-11 12:10
点赞 评论 收藏
分享
评论
点赞
1
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务