美文网首页
网易 2019 实习生编程题

网易 2019 实习生编程题

作者: vckah | 来源:发表于2018-05-08 22:28 被阅读0次

网易 2019 实习生的编程题

  • 牛牛找工作

每个输入包含一个测试用例。
每个测试用例的第一行包含两个正整数,分别表示工作的数量N(N<=100000)和小伙伴的数量M(M<=100000)。
接下来的N行每行包含两个正整数,分别表示该项工作的难度Di(Di<=1000000000)和报酬Pi(Pi<=1000000000)。
接下来的一行包含M个正整数,分别表示M个小伙伴的能力值Ai(Ai<=1000000000)。
保证不存在两项工作的报酬相同。

示例:

3 3   
1 100 
10 1000 
1000000000 1001 
9 10 1000000000

输出:

100 
1000 
1001

思路:
用一个字典存储难度和对应的报酬,然后对输入的能力值与难度放在一起,意思就是能力值用不同的难度分开。
例如 [1, 9, 10, 10, 100, 100],即能力 9 10 100 的能力在难度为 1 10 100 中的位置,可以清楚地看到 9 是小于 难度 10 的,所以 9 的报酬只能为难度 1 对应的报酬。

from collections import defaultdict
# 获取工作数量 朋友数量
jobs, frineds_nu = list(map(int, raw_input().split()))
i, dp = 0, []
while i < jobs:
    # 获取工作对应难度和报仇,将其打包为一个列表后存入列表 dp
    v = list(map(int, raw_input().split()))
    if len(v) == 2:
        dp.append(v)
        i += 1
frineds_ability = []
while len(frineds_ability) != frineds_nu:
    # 获取朋友的能力
    frineds_ability = list(map(int, raw_input().split()))

# 构造一个字典来存储难度和对应的报酬
dp = defaultdict(int, dp)
# defaultdict 不存在的键默认值是 0
max_ = 0
# 将朋友能力与工作难度进行排序,后面确定报酬
abilities = sorted(list(dp.keys()) + frineds_ability)

for i in abilities:
    # 遍历难度,确定能力对应的报酬的最大值,将那些能力大于难度的 能力:报酬 存入 dp
    max_= max(dp[i], max_)
    dp[i] = max_
for i in frineds_ability:
    print(dp[i])

说实话,用 python 处理输入的情况我用的不是很多,感觉很不舒服,有没有一种比较友好的输入方法。

  • 被 3 整除

小Q得到一个神奇的数列: 1, 12, 123,...12345678910,1234567891011...。
并且小Q对于能否被3整除这个性质很感兴趣。

小Q现在希望你能帮他计算一下从数列的第l个到第r个(包含端点)有多少个数可以被3整除。
思路:
这是个找规律题

1  2  3   4     5     6      7
1 12 123 1234 12345 123456 1234567
1, 4, 7 不能被 3 整除
由此发现规律,3n + 1 (n>=0) 都不能被 3 整除

也不知道这么算对不对。。。

l, r = map(int, raw_input().split())
count = 0
for i in range(l, r+1):
    if i%3 != 1:
        count += 1
print count

待更。。。

相关文章

  • 网易历届笔试面试题整理大全

    整理了一下网易往届笔试面试题,希望对大家有帮助: 来源:网易笔试面试圈>> 1、2019网易实习生招聘编程题集合 ...

  • 网易 2019 实习生编程题

    网易 2019 实习生的编程题 牛牛找工作 每个输入包含一个测试用例。每个测试用例的第一行包含两个正整数,分别表示...

  • 网易2019实习生招聘编程题集合

    1.牛牛找工作 为了找到自己满意的工作,牛牛收集了每种工作的难度和报酬。牛牛选工作的标准是在难度不超过自身能力值的...

  • 精研3道简单的网易2018校招编程题

    下面三道编程题来自网易2018校招编程题,这三道应该来说是非常简单的编程题了,这些题目大家稍微有点编程和数学基础的...

  • 网易编程题总结

    链接:https://www.nowcoder.com/questionTerminal/d996665fbd5e...

  • 网易游戏编程题

    标签(空格分隔): 算法 C++ 笔试 第三题:描述小王最近在开发一种新的游戏引擎,但是最近遇到了性能瓶颈。于是他...

  • 网易笔试2018编程题

    第一题 [编程题] 牛牛找工作时间限制:2秒 空间限制:65536K 为了找到自己满意的工作,牛牛收集了每种工作的...

  • 网易编程题 混合颜料

    题目描述 你就是一个画家!你现在想绘制一幅画,但是你现在没有足够颜色的颜料。为了让问题简单,我们用正整数表示不同颜...

  • 网易编程题 地牢逃脱

    题目描述 给定一个 n 行 m 列的地牢,其中 '.' 表示可以通行的位置,'X' 表示不可通行的障碍,牛牛从 (...

  • 阿里巴巴2017实习生招聘研发工程师C&C++笔试题

    阿里巴巴2017实习生招聘研发工程师C/C++笔试题,包括选择题和编程题。 一、选择题 1.(单项选择题) 下面关...

网友评论

      本文标题:网易 2019 实习生编程题

      本文链接:https://www.haomeiwen.com/subject/wekgrftx.html