百度9.7号Java笔试

1、像素图扩大
扩大后的数组下标  除  扩大倍数K;

2、完美数
完美数:一个数的每一位只能是 1 2 3中的一个;
给一个数n,求不大于n的最大完美数
输入
213
3244
22
100
输出   
213
3233
22
33

本地测试了几个通过,但提交为0,大佬们怎么做。。。

3、子序列
给一个长度为n的字符串s,和整数k,问s的子序列中,恰好包含k个不同字母的子序列个数;

不会。。。大佬们讲讲思路。。。



#百度笔试##百度##笔经##java工程师#
全部评论
第二题:
2 回复 分享
发布于 2021-09-07 22:07
第二题, 要考虑的点比较多, 从左向右搜索到第一个大于 3 的直接将这一位和后面所有的改成 3 然后搜索到 0 向前搜索到第一个大于 1 的, 如果搜索到最开头那么直接返回 '3' * (N - 1), 否则返回搜索结果下标的数字减 1 然后后面的全部改成 3, 本质是贪心, 建议把 100, 1110, 345这些加入测试集
1 回复 分享
发布于 2021-09-08 16:15
第二题的话,我到有个简单的思路。从左遍历,如果先遇到大于3的数,从这位开始,后面全置为3,return。如果先遇到0,从这位开始,后面全置为0,然后把得到的数减1,从头便利就好了。
1 回复 分享
发布于 2021-09-08 18:13
等大佬贴个答案
点赞 回复 分享
发布于 2021-09-07 21:27
数字范围很大,数之大,一个int存不下,可惜结束才发现
点赞 回复 分享
发布于 2021-09-07 22:14

相关推荐

点赞 5 评论
分享
牛客网
牛客企业服务