记vivo一道笔试题

今晚做了vivo秋招提前批的笔试题,进入笔试就给出了三道编程题,我原本以为这只是笔试的一部分题目,做完这三道编程题提交后发现没有其他题目了。。。有一道题目有点困惑,分享在这里看看掘友们有没有更好的方法解决。

题目大概是

某人准备礼品采购,每个礼品都有相应的价格和热度值,计划采购三件礼品,同一礼品只能采购一次;请编写一个程序输出采购的最大热度值,该程序接受三个数组作为参数,一个数组存放着可以采购的最大金额,第二个数组存放礼品的价格,第三个数组存放礼品相对应的热度值。

给出的示例

arr1 = [1000], arr2 = [300, 600, 200, 180, 100, 450], arr3 = [6, 10, 3, 4, 5, 8];

输出结果: 21

当我看到这个题目时,想了几分钟,看有什么算法可以优雅的编写这个程序,最后用了一个比较愚蠢的方法,代码如下:

就这样。。用了三个for循环,我感觉这个方法不好,但是没想到有什么其他解决方法了。你们如果有其他更好的方法,欢迎提出来~

转载于:https://juejin.im/post/5cf68bac6fb9a07f0b03af9b

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值