阿里3.29笔试

两道题,感觉都不难,一道简单计算,一道floyd,都能快速AC

  1. 每人可以投K票,求保证获胜最小的K
    n = int(input())
    a = list(map(int, input().split()))
    sum = 0
    ans = 0
    for i in a:
     if i>ans:
         ans = i
     sum+=i
    while((ans*n-sum)<=sum):
     ans+=1
    print(ans)
  2. 找能在d距离内到达其他城市数量最少的城市
    def floyd(n, adj):
     ans = adj
     for k in range(n):
         for i in range(n):
             for j in range(n):
                 ans[i][j] = min(ans[i][j], ans[i][k]+ans[k][j])
     return ans
    T = int(input())
    for i in range(T):
     n,m,d = list(map(int, input().split()))
     adj_matrix = [[float('inf')]*n for i in range(n)]
     for j in range(n):
         adj_matrix[j][j] = 0
     for j in range(m):
         l,r,w = list(map(int, input().split()))
         adj_matrix[l][r] = w
         adj_matrix[r][l] = w
     dis = floyd(n, adj_matrix)
     ans = 0
     fewest = n
     for j in range(n):
         count = 0
         for to in dis[j]:
             if to<=d:count+=1
         if count<=fewest:
             fewest = count
             ans = j
     print(ans)
#阿里巴巴##笔试题目#
全部评论
没咋复习图呢我淦,用bfs弄了50分钟也没过
1
送花
回复 分享
发布于 2021-03-29 20:22
第一题ac后一紧张一不小心交卷了😓
点赞
送花
回复 分享
发布于 2021-03-29 19:51
神州信息
校招火热招聘中
官网直投
跪了。第二题用的N次迪杰斯特拉,就挂了,可能是时间超了,虽然都是O(N^3)
点赞
送花
回复 分享
发布于 2021-03-29 20:03
第二题太紧了,数据构造乱了😅,用dfs没弄出来
点赞
送花
回复 分享
发布于 2021-03-29 20:04
lc 有没有类似的题呢?
点赞
送花
回复 分享
发布于 2021-03-29 20:08
我第一道就过了90%  对所有 投票求和得 sum 然后 (sum*2+n)//n   为啥不对啊
点赞
送花
回复 分享
发布于 2021-03-29 20:10
n = input() a = list(map(int,input().split())) voteForMing = sum(a) k = 2 * voteForMing // n while(k*n<=2*voteForMing): k+=1 while(k<max(a)): k+=1 print(k)
点赞
送花
回复 分享
发布于 2021-03-29 20:14
想问一下楼主语言可以选r吗
点赞
送花
回复 分享
发布于 2021-03-30 12:08
进入下方链接,搜索“抖音”进行投递,内推码 GQ8NUUX   简历直达 !!!!! 21届全职补招:https://zjsms.com/e1bVW35/ 22届暑期实习:https://zjsms.com/e1gvHs9/
点赞
送花
回复 分享
发布于 2021-03-31 11:17
求简历求简历 阿里cto线急召java开发->https://www.nowcoder.com/discuss/613981?source_id=profile_create_nctrack&channel=-1
点赞
送花
回复 分享
发布于 2021-04-06 17:14

相关推荐

点赞 评论 收藏
分享
2 17 评论
分享
牛客网
牛客企业服务