9.5 小米笔试
鼠鼠因为简历被疯狂挂,导致很久没写笔试了
今天有幸写了小米的笔试题:
第一题是做面包的最小代价题,直接模拟一遍就行,要用multiset维护一个有序集合,或者用堆也可以
第二题也是个最小代价问题,两种操作,一个是给一个数自增1,一个是移除一个数,最后让数组和被x整除。最优解肯定是要考虑两种操作的组合,所以要穷举所有可能出现的情况,而删除i和删除i+x最后+1的操作数都是一样的,所以对元素取模,只需要考虑删除[1,x-1]这个区间的和就可以了,这时候就可以把问题转化为和为i的最小元素数,用dp就行。
求出dp数组后再依次考虑每个代价i,看删除了和为i的几个元素后,还需要做几次加1的操作,最后取最优解即可。
在更新ans的时候忘记考虑s - i后刚好是x的倍数的情况了,卡了二十分钟
今天有幸写了小米的笔试题:
第一题是做面包的最小代价题,直接模拟一遍就行,要用multiset维护一个有序集合,或者用堆也可以
第二题也是个最小代价问题,两种操作,一个是给一个数自增1,一个是移除一个数,最后让数组和被x整除。最优解肯定是要考虑两种操作的组合,所以要穷举所有可能出现的情况,而删除i和删除i+x最后+1的操作数都是一样的,所以对元素取模,只需要考虑删除[1,x-1]这个区间的和就可以了,这时候就可以把问题转化为和为i的最小元素数,用dp就行。
求出dp数组后再依次考虑每个代价i,看删除了和为i的几个元素后,还需要做几次加1的操作,最后取最优解即可。
在更新ans的时候忘记考虑s - i后刚好是x的倍数的情况了,卡了二十分钟
全部评论
有点牛
请问第一题是那个配对括号的题吗?
都是编程题吗
请问第二题的dp[i]表示什么?
相关推荐
02-25 16:29
齐鲁工业大学 golang 找工作勤劳小蜜蜂:自我描述部分太差,完全看不出想从事什么行业什么岗位,也看不出想在哪个地区发展,这样 会让HR很犹豫,从而把你简历否决掉。现在企业都很注重员工稳定性和专注性,特别对于热爱本行业的员工。
你实习的工作又太传统的it开发(老旧),这部分公司已经趋于被淘汰,新兴的互联网服务业,比如物流,电商,新传媒,游戏开发和传统的It开发有天然区别。不是说传统It开发不行,而是就业岗位太少,基本趋于饱和,很多老骨头还能坚持,不需要新血液。
工作区域(比如长三角,珠三角,成渝)等也是HR考虑的因素之一,也是要你有个坚定的决心。否则去几天,人跑了,HR会被用人单位骂死。
点赞 评论 收藏
分享
03-06 17:55
北方工业大学 人工智能 点赞 评论 收藏
分享
