【编程练习】拼多多2021笔试真题集
题目来源:牛客,拼多多2021笔试真题集
第一题:多多的数字组合
打卡题,很明显的两个约束:每个位数各不相同 + 数字最小,在这两个条件的约束下,N最大为45,对应的数字为123456789
。
代码如下:
def main():N = int(input())if N>45:print(-1)else:ind = 9 # 指示当前添加到那个数字了ans = ''while N>ind:ans = str(ind)+ansN -= indind -= 1ans = str(N)+ansprint(ans)returnif __name__ == '__main__':main()
第二题:多多的字符变换
题目未限制操作次数,因此,相邻两字符的交换 等价于 任意两字符的交换,其代价都为0。
因此,想法是,字典存储每个字符串包含的字母对应的个数,去掉共同字符,剩下的字符从小到大排列,对应位置相减再求和即是答案。
注意,不能将剩下的字符求和再做相减,否则会发生抵消。
代码如下:
def main():N = int(input())X = input()Y = input()X_list,Y_list = [0]*26,[0]*26for i in range(N):X_list[ord(X[i])-97]+=1Y_list[ord(Y[i])-97]+=1X_sub,Y_sub = '',''for i in range(26):ind = min(X_list[i],Y_list[i])X_sub += chr(i+97)*(X_list[i]-ind)Y_sub += chr(i+97)*(Y_list[i]-ind)ans = 0for i in range(len(X_sub)):ans += abs(ord(X_sub[i])-ord(Y_sub[i]))print(ans)returnif __name__ == '__main__':main()
第三题:多多的求和计算
假设区间[i,j]的和谐值之和可以被M整除,并记作nM,同时,区间[0,i]的和谐值之和记作S1,区间[0,j]的和谐值之和记作S2,很显然,S2=S1+nM
,变换得到S2%M = S1%M
。这就是解题的关键:先求一遍前缀和,并对每个前缀和求余,记录余数为r的区间个数,再计算Cn2即可得到答案。
注意,答案需要加上前缀和自身对M求余为0的区间个数。
代码如下:
def main():N,M = map(int,input().split())cumu,ans = 0,0rest = [0]*Mfor i in input().split():cumu += int(i)rest[cumu%M]+=1for i in rest:ans += i*(i-1)//2print(ans+rest[0])returnif __name__ == '__main__':main()
!!!太经典的题了,需要反复看,和谐值本身不需要被记录,所有的前缀和也不需要都被记录下来
【编程练习】拼多多2021笔试真题集相关推荐
- 拼多多2021笔试真题集
拼多多2021笔试真题集 数字组合 字符变换 求和计算 骰子组合 数字组合 多多君最近在研究某种数字组合: 定义为:每个数字的十进制表示中(0~9),每个数位各不相同且各个数位之和等于N. 满足条件的 ...
- 拼多多2021笔试真题集 多多的数字组合 多多的字符变换 多多的求和计算 多多的骰子组合
第一题 多多的数字组合 多多君最近在研究某种数字组合: 定义为:每个数字的十进制表示中(0~9),每个数位各不相同且各个数位之和等于N. 满足条件的数字可能很多,找到其中的最小值即可. 输入描述: 共 ...
- 拼多多2021笔试真题集 -- 1. 多多的数字组合
多多的数字组合 多多君最近在研究某种数字组合: 定义为:每个数字的十进制表示中(0~9),每个数位各不相同且各个数位之和等于N. 满足条件的数字可能很多,找到其中的最小值即可. 多多君还有很多研究课题 ...
- 拼多多2021笔试题解
总 结 : 技 不 如 人 , A K 失 败 . j p g . . . 以 及 真 的 好 烦 大 模 拟 啊 h h h 总结:技不如人,AK失败.jpg...以及真的好烦大模拟啊hhh 总结: ...
- 牛客网笔试真题 2021 阿里巴巴编程题(4星)题解(1-5)
2021阿里巴巴校招笔试真题_Java工程师.C++工程师_牛客网 1.小强现在有n个物品,每个物品有x,y两种属性和.他想要从中挑出尽可能多的物品满足以下条件:对于任意两个物品 i 和 j ,满足( ...
- 拼多多2021高频题汇总 | 备战春招,刷这30题就够了!
春招高峰期,九章算法特别开放了[2021春招信息情报站],搜集汇总了阿里.字节.腾讯.顺丰.百度等互联网大厂的一手春招情报,包含网申链接.招聘范围.秘密情报.春招题库等,希望帮助更多同学顺利上岸! 校 ...
- 滴滴出行2017秋招笔试真题-编程题汇总_Java实现
滴滴出行2017秋招笔试真题-编程题汇总_Java实现 注:有的题参考别人的思路,用我最容易理解的代码编的程序,所以可以不能最优的解法,后续我会进行更新,只是一个思路,我的笔记而已,所以不喜勿喷~~~ ...
- 网易2017春招笔试真题编程题集合
网易2017春招笔试真题编程题集合 题目来源:牛客网 https://www.nowcoder.com/profile/7952866/test/7811777/83061 1.双核处理 题目描述 一 ...
- 笔试真题解析 | 4.15携程实习笔试三道编程题
恭喜发现宝藏!搜索公众号[TechGuide]回复公司名,解锁更多新鲜好文和互联网大厂的笔经面经. 作者@TechGuide[全网同名] 订阅专栏[进阶版]2023最新大厂笔试真题 & 题解, ...
最新文章
- Windows Phone 7 WebBrowser 中文乱码问题
- Leetcode 95. 不同的二叉搜索树 II 解题思路及C++实现
- 本题中的变量(不包括变量ID)进行z-score标准化
- Java JDBC中,MySQL字段类型到JAVA类型的转换
- Python(60)_闭包
- 合泰单片机做电压表_启士 | 蓝桥杯零基础单片机教程9 I2C介绍(上)
- 调用servlet java_请问调用servlet并从JavaScript调用Java代码以及参数
- BZOJ 1607 [Usaco2008 Dec]Patting Heads 轻拍牛头:统计 + 筛法【调和级数】
- 【HEVC学习与研究】46、HEVC参考代码中SAO的实现
- adc0808模数转换实验报告_模数转换ADC0832、ADC0808和ADC0809的利用
- 【PR】PR剪辑视频编辑软件视频去字幕
- 用PS做手机计算机,功能与电脑ps相媲美的手机画画软件
- 查看计算机远程端口,如何查看服务器远程端口号.doc
- Android 安卓动画 属性动画 - 组合动画
- Python面向对象编程(类编程)中self的含义详解(简单明了直击本质的解释)
- 数字艺术藏品系统开发
- 解决IntelliJ IDEA创建Maven项目没有src目录的问题
- PX4和Airsim通信操作流程
- freeswitch按键自适应测试
- matlab 关联规则挖掘,数据挖掘实验(六)Matlab实现Apriori算法【关联规则挖掘】...