Programmers-カーペット
4083 ワード
💻 じゅうたん
に質問
https://programmers.co.kr/learn/courses/30/lessons/42842
勘定科目
function solution(brown, yellow) {
let totalBlock = brown + yellow;
for (let a = 3; a < brown / 2 + 1; a++) {
// a는 세로 b는 가로
if (totalBlock % a !== 0) {
continue;
}
let b = ((brown - 2 * a + 4) / 2);
if (b === totalBlock / a) {
if (a >= b) {
return [a, b];
} else {
return [b, a];
}
}
}
}
¥¥АААААААААА
まず褐色と黄色を組み合わせた値が合計の組み合わせ値です.
横方向と縦方向の長さの積も全体のブロック値です.
褐色のブロック=2(縦-2)+2(横-2)
黄色の四角形=total-茶色の四角形=横*縦-茶色の四角形
したがって
儀式を作ることができます.
横方向=(褐色-2*縦方向+4/2);
縦は3から、縦は褐色の半分を超えてはいけません.
三路から、食欲を満たす横道があるとき
縦*横が合計の場合、対応する値は横になります.
問題では数字が大きい順に出力されることが要求されているので、戻る順番は大きいです.
📄 学識
function solution(brown, yellow) {
let totalBlock = brown + yellow;
for (let a = 3; a < brown / 2 + 1; a++) {
// a는 세로 b는 가로
if (totalBlock % a !== 0) {
continue;
}
let b = ((brown - 2 * a + 4) / 2);
if (b === totalBlock / a) {
if (a >= b) {
return [a, b];
} else {
return [b, a];
}
}
}
}
Reference
この問題について(Programmers-カーペット), 我々は、より多くの情報をここで見つけました https://velog.io/@doodream/Programmers-카펫テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol