2021-05-17

leetcode面试题16.11跳水板

因为我想搞前端,所以以后刷题都会用JavaScript来写,在这里记录一下代码和每次刷题学到的知识
**今天是跳水板问题:你正在使用一堆木板建造跳水板。有两种类型的木板,其中长度较短的木板长度为shorter,长度较长的木板长度为longer。你必须正好使用k块木板。编写一个方法,生成跳水板所有可能的长度。

返回的长度需要从小到大排列。**

var divingBoard = function(shorter, longer, k) {
    var shorterNum;
    var longerNum;
    var res = [];
    if(k == 0){
        return res;
    }
    for(var i = k;i >= 0;i--){
        shorterNum = i;
        longerNum = k - i;
        res.push(shorterNum * shorter + longerNum * longer);
    }
    // 去除重复元素
    var newres = [];
    var flag = 1;
    for (var i = 0;i < res.length;i++){
        for(var j = 0;j < newres.length;j++){
            if (res[i] == newres[j]){
                flag = 0;
                break;
            }else{
                flag = 1;
            }
        }
        if(flag == 1){
            newres.push(res[i])
        }
    }
    return newres;
};
用了一个比较笨拙的方法,还没学到啥,感觉就是纯逻辑

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值