滴滴9.4算法笔试

桃子装箱(AC)
''' 题目描述: 小昱家的桃园丰收了!小昱采摘下来n个桃子,并对这些桃子称重,其中第i个桃子的重量为ai。
小昱想选择一些桃子装成一箱后送给朋友,但是小昱不希望一箱桃子中有一些太大的桃子而影响整体美观。
于是他给装箱工人提出了一个要求:一箱桃子中最重的桃子重量不能超过平均重量的k倍。装箱工人想知道在满足小昱要求的情况下,一箱最多能装多少个桃子。   输入描述 第一行输入两个正整数 n, k,表示桃子个数、倍数系数。  接下来一行输入n个正整数a1, a2,...... an,其中ai表示第 i 个桃子的重量。   1 ≤ n, k ≤ 100000, 1≤ ai ≤ 109 输出描述 输出一个整数,表示一箱最多能装桃子数量。   样例输入 5 2 3 10 5 4 2 样例输出 4   '''
n, k = map(int, input().strip().split())
nums = list(map(int, input().strip().split()))
# print(nums)
nums.sort(reverse=True)
path = []
weight = 0
ans = 0
for i in range(n):
    path.append(nums[i])
    weight += nums[i]
    while len(path)>0 and path[0]>(k*weight/len(path)):
        temp = path.pop(0)
        weight -= temp
    ans = max(ans, len(path))

print(ans)
老张美术课(超时只能过64%)
''' 题目描述: 老张教授开了一堂美数课! 老张认为每个非负整数x都有一个美丽值b(x)一个非负整数的美丽值定义为这个数十进制下每个数位的异或和。即,对于123来说,美丽值为1^2^3=0,对于654815424美丽值为6^5^4^8^1^5^4^2^4=9 (在C/C++^运算符表示异或) 现在老张想考考同学,对于[L,R]这个闭区间内的所有整数,美丽值恰好为t的数有多少个。 输入描述 第一行一个正整数,表示有次询问。  接下来有三行:  第一行个非负整数 L1,L2,...,Li,...,LT(1≤i≤T)  第二行个非负整数 R1,R2,...,Ri,...,RT(1≤i≤T)  第三行个非负整数 t1,t2,...,ti,...,tT(1≤i≤T)  每个询问是对于 [Li, Ri] (Li≤Ri)这个闭区间内的所有整数,美丽值恰好为的数有多少个。 输出描述 每个询问输出T个整数,每两个数之间用空格隔开,表示答案。  样例输入 2 0 1 0 10 0 1 样例输出 1 2 '''
n = int(input())
num1 = list(map(int, input().strip().split()))
num2 = list(map(int, input().strip().split()))
num3 = list(map(int, input().strip().split()))
def b(x):
    x=str(x)
    res = 0
    for s in x:
        res = res^int(s)
    return int(res)
res = [0] * n
for i in range(n):
    cont = 0
    for num in range(num1[i], num2[i]+1):
        if b(num) == num3[i]:
            cont += 1
    res[i] = cont
res = list(map(str, res))
print(' '.join(res))

#滴滴##秋招##算法工程师##笔试##滴滴23秋招笔试有点儿难啊#
全部评论
好奇怪,第二题每个区间我只算第一个数的漂亮数x,区间后面的数的漂亮数只需要把x累积与1xor就行,然后比较是不是漂亮数,ac了,下来我越想越不对啊,咋ac的,感觉是他的实例不完备,被我偷鸡了
点赞
送花
回复 分享
发布于 2022-09-05 00:41 四川
第一题是双指针吗
点赞
送花
回复 分享
发布于 2022-09-05 16:43 湖北
国泰君安
校招火热招聘中
官网直投

相关推荐

7 12 评论
分享
牛客网
牛客企业服务