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;
};
用了一个比较笨拙的方法,还没学到啥,感觉就是纯逻辑