拼多多秋招提前批笔试题

四道算法题,2个小时。

1.判断线段是否在线段内

题意:给出几组线段,判断是否有线段在另外的线段内。
如输入
3
1 2
2 3
3 4
则输出false
如输入
2
1 2
0 4
则输出true,12在04内

参考思路

好像在LeetCode上有类似的题目
用了比较暴力的做法,双重循环判断线段是否在线段内

2. 扑克牌游戏

小明小红玩扑克牌游戏,这边假设牌用整形表示,两人的卡组数量固定为n,且只能按顺序出牌。小明先出牌,当出牌人的牌和已有的牌相同时,可以回收至相同的牌(包括相同的牌),并且需要再出一张。
当双方都没有牌时,游戏结束。若此时场上还有牌,则奇数的归小明,偶数的归小红。输出小明和小红分别回收了几张牌?
如输入
2
1 1
2 2
则输出3 1。解释,小明先放了1,小红再放2,小明再放1,和之前的1相同,回收这三张,最后小红放2,双方都没牌了,场上只剩2,归小红。
如输入
4
1 2 3 4
5 6 7 8
则输出4 4。解释,最后各自从场上回收,小明收了1,3,5,7。小红收了2,4,6,8。

参考思路

简单模拟,根据题意分别放牌,然后判断是否要收牌。可以用List存储两人的卡组,再用一个List存储场上的牌

3.无限集合

题意:判断一个数是否属于一个无限集合。无限集合的定义是,给定一个初始值A,对于这个集合中的元素X,所有X+B也属于这个无限集合,所有X*C也属于这个集合。
输入A B C Q,问Q是否属于这个无限集合。
输入举例:
2 3 2 10
输出true。因为(2+3)*2=10。
输入
3 3 3 7
输出false,不管怎样转换,没法得到7。

4.最大乘积

给定0-9的数字的数量(至少有2个数),组成两个数相乘,求最大乘积
输入举例:
0 4 0 0 0 0 0 0 0
输出
121。解释:给了4个1,那么最大乘积应该是11*11
输入举例:
2 3 0 1 0 0 0 0 0
输出
34100。解释:最大应该是3100*11

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值