2022.05.18 笔试题
对于一块矩形材料,每次切出一块最大的正方形,剩下一块矩形,然后再切割剩下的矩形材料,直到全部切为正方形为止。给出矩形的长和宽,请输出每次的正方形的边长。eg: [60,40] => [40,20,20]
function foo(c,k) { //长和宽
let ans = [];
while(c>0 || k>0) { //当还有长或宽时
if(c>k) {//当长大于宽时
c -= k;
ans.push(k);
let temp = c;
c = k;
k = temp;
}
if(c == k) {
ans.push(c);
break;
}
}
return ans;
}
console.log(foo(60,40));//[ 40, 20, 20 ]
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)