网易算法笔试

# 中位数 100%
# 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
# @param arr float浮点型一维数组 非空无序数组
# @return float浮点型
#
class Solution:
    def median(self , arr ):
        # write code here
        n = len(arr)
        arr.sort()
        if n % 2 == 1:
            return float(arr[n//2])
        else:
            a = arr[n//2-1]+arr[n//2]
            return float(a/2)
# 数名字 20% 超时
names = list(input().split())
paper = input()
n = len(paper)
ans = 0
for name in names:
    m = len(name)
    for j in range(n):
        if paper[j:j+m] == name:
            ans += 1
print(ans)
# 分类置信度 10% 输出怎么处理?
import math
N, K = map(int, input().split())
logits = [[0]*K for _ in range(N)]
for i in range(N):
    logits[i] = list(map(float, input().split()))
    L = logits[i]
    ans = [0] * K 
    for j in range(K):
        ans[j] = math.exp(L[j])
    b = sum(ans)
    max_num = max(ans)
    for k in range(K):
        if ans[k] == max_num:
            index = k
            break
    ans1 = round(max_num/b,6)
    print(k, ans1)

# 知道了,上题应该这么写:
import math
N, K = map(int, input().split())
logits = [[0]*K for _ in range(N)]
for i in range(N):
    logits[i] = list(map(float, input().split()))
    L = logits[i]
    ans = [0] * K 
    for j in range(K):
        ans[j] = math.exp(L[j])
    b = sum(ans)
    max_num = max(ans)
    for k in range(K):
        if ans[k] == max_num:
            index = k
            break
    ans1 = max_num / b
    ans1 = int(ans1*10**6)
    ans1 = ans1 / 10**6
    print(k, '%.6f' % ans1)
    # print(format(ans1, '.6f'))
# 纸张分配 90% 
boy = list(map(int, input().split()))
n = len(boy)
dp = [1] * (n+2)
boys = [1] * (n+2)
boys[0] = boy[n-1]
boys[-1] = boy[0]
boys[1:n+1] = boy
ans = 0

for i in range(1,n+1):
    if boys[i] > boys[i-1] and boys[i] > boys[i+1]:
        dp[i] = max(dp[i-1], dp[i+1]) + 1
    elif boys[i] > boys[i-1] and boys[i] <= boys[i+1]:
        dp[i] = dp[i-1] + 1
    elif boys[i] <= boys[i-1] and boys[i] > boys[i+1]:
        dp[i] = dp[i+1] + 1
for i in range(1, n+1):
    if boys[i] > boys[i-1] and dp[i] <= dp[i-1]:
        ans += 1
    elif boys[i] > boys[i+1] and dp[i] <= dp[i+1]:
        ans += 1

print(sum(dp[1:n+1])+ans)
又要拿感谢信了,到现在一个offer都没有,考虑转行了#网易笔试##网易##笔经#
全部评论
已挂
点赞 回复 分享
发布于 2021-08-25 20:23

相关推荐

12-20 11:26
复旦大学 Java
点赞 评论 收藏
分享
11-28 13:56
已编辑
吉林建筑大学
所有好工作吻上来:最近可能压力比较大吧,面试的时候已经不屑于去说一些违心的话了,今天这场面试我真是没控制住啊,感觉我已经要发火了
实习学到最有价值的工作习...
点赞 评论 收藏
分享
11-25 09:41
已编辑
Java
程序员花海_:实习和校招简历正确格式应该是教育背景+实习+项目经历+个人评价 其中项目经历注意要体现业务 实习经历里面的业务更是要自圆其说 简历模板尽可能保持干净整洁 不要太花哨的
投了多少份简历才上岸
点赞 评论 收藏
分享
评论
1
2
分享

创作者周榜

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