首页 > 8.13bilibili笔试
头像
軔鈳
编辑于 2020-08-13 20:37
+ 关注

8.13bilibili笔试

第一题
A = input()
B = input()
hashA = {}
hashB = {}

for ch in A:
    if ch in hashA:
        hashA[ch] += 1
    else:
        hashA[ch] = 1
for ch in B:
    if ch in hashB:
        hashB[ch] += 1
    else:
        hashB[ch] = 1
if len(hashA) != len(hashB):
     print(0)

else:
    for key in hashA.keys():
        if key not in hashB:
            print(0)
            break
        elif hashA[key] != hashB[key]:
            print(0)
            break
    else:
        print(1)



第二题:
import math
n = int(input())
def issu(num):
    if num < 2:
        return False
    for i in range(2, int(math.sqrt(num)) + 1):
        if num % i == 0:
            return False
    return True
tmp = []
for i in range(10001):
    if issu(i):
        tmp.append(i)
i, j = 0, 0
ans = 0
while j < len(tmp) and i < len(tmp):
    subsum = sum(tmp[i:j + 1])
    if subsum == n:
        ans += 1
        i += 1
        j = i
    elif subsum < n:
        j += 1
    else:
        i += 1
print(ans)
第三题
#######0-1背包问题##########
n,m=[int(i) for i in input().split()]
mi,ri=[],[]

for i in range(n):
    a,b=[int(i) for i in input().split()]
    mi.append(a)
    ri.append(b)
dp=[[0 for _ in range(m+1)] for _ in range(n+1)]

for i in range(1,n+1):
    for j in range(1,m+1):
        if mi[i-1]>j:
            dp[i][j]=dp[i-1][j]
        else:
            dp[i][j]=max(dp[i-1][j-mi[i-1]]+ri[i-1],dp[i-1][j])
print(dp[n][m])



全部评论

(3) 回帖
加载中...
话题 回帖

推荐话题

相关热帖

近期热帖

历年真题 真题热练榜 24小时
技术(软件)/信息技术类
查看全部

近期精华帖

热门推荐