2023暑期实习-笔试-百度-算法
公司:百度
岗位:算法
笔试平台:赛码
考试时长:120钟
试卷总分:100分
考试题型:单选 30 道(60分),编程 3 道(40分)
时间:2023-04-10 19:00-21:00
单选题
C++/Java、Linux、概率、数据结构、机器学习
编程题
最佳优惠
描述
现在给你一张优惠券。优惠券上有两个正整数L和R。
该优惠券的使用规则是:
你可以任意选取一个位于[L, R]之间的正整数(不妨令其为x),抵扣 x 和 x 各个数位上的数字之和的乘积的金额。
比如当你选择数字69时,你可以抵扣的金额为
69 * (6 + 9) = 1035
现在询问你最大可以利用手中这张优惠券抵扣多少金额?
输入描述
一行,给出两个整数 L, R以空格隔开,代表手中优惠券上的数。
1 ≤ L ≤ R ≤ 1e5
输出描述
输出一行,代表最大优惠金额。
示例
样例输入
3 6
样例输出
36
样例解释1
选取数字为 3 的折扣金额是3*3=9,数字为 4 的折扣金额是4*4=16,数字为 5 的折扣金额是5*5=25,数字为 6 的折扣金额是6*6=36,故最大折扣金额为36。
输入样例2
11 31
输出样例2
319
样例解释2
选取数字为 29 的折扣金额是29 * (2+9)=319,可以证明这是手上优惠金额最大的一张优惠券。
思路
遍历,保留最大值
代码
L, R = map(int, input().split()) ans = 0 for i in range(L, R+1): cur = i * sum([int(j) for j in str(i)]) ans = max(ans, cur) print(ans)
玩具士兵
描述
小明买了一些玩具士兵,他邀请小红一起玩。他总共有n个士兵,刚开始时,这n个士兵被排成一
剩余60%内容,订阅专栏后可继续查看/也可单篇购买
一个普通数据人的成长之路 文章被收录于专栏
记录实习和校招的笔试面试(标题年份表示笔试或面试的年份)和个人成长,牛友们的点赞、评论、收藏就是更新的动力和支持~