num1
, num2
๊ฐ ๋งค๊ฐ๋ณ์๋ก ์ฃผ์ด์ง ๋, num1
๋ฅผ num2
๋ก ๋๋ ๋๋จธ์ง๋ฅผ return ํ๋๋ก solution ํจ์๋ฅผ ์์ฑํด์ฃผ์ธ์.num1
โค 100num2
โค 100์
์ถ๋ ฅ ์ #1
num1
์ด 3, num2
๊ฐ 2์ด๋ฏ๋ก 3์ 2๋ก ๋๋ ๋๋จธ์ง 1์ return ํฉ๋๋ค.
์
์ถ๋ ฅ ์ #2
num1
์ด 10, num2
๊ฐ 5์ด๋ฏ๋ก 10์ 5๋ก ๋๋ ๋๋จธ์ง 0์ return ํฉ๋๋ค.
function solution(num1, num2) {
return num1 % num2;
}
array
๊ฐ ๋งค๊ฐ๋ณ์๋ก ์ฃผ์ด์ง ๋, ์ค์๊ฐ์ return ํ๋๋ก solution ํจ์๋ฅผ ์์ฑํด๋ณด์ธ์.array
์ ๊ธธ์ด๋ ํ์์
๋๋ค.array
์ ๊ธธ์ด < 100array
์ ์์ < 1,000์
์ถ๋ ฅ ์ #1
๋ณธ๋ฌธ๊ณผ ๋์ผํฉ๋๋ค.
์
์ถ๋ ฅ ์ #2
9, -1, 0์ ์ค๋ฆ์ฐจ์ ์ ๋ ฌํ๋ฉด -1, 0, 9์ด๊ณ ๊ฐ์ฅ ์ค์์ ์์นํ๋ ๊ฐ์ 0์
๋๋ค.
// 1. ์ ๋ ฌ
// 1-1. ๋ฐฐ์ด ์ค ๊ฐ์ฅ ์์ ๊ฐ์ ์ฐพ๋๋ค.
// 1-2. ์ฐพ์ผ๋ฉด ์ ๋ฐฐ์ด์ ๋ฃ๋๋ค.
// 1-3. ์๋ ๋ฐฐ์ด์ ์ฐพ์ ๊ฐ์ ์ง์ด๋ค.
// 1-4. ๋ฐฐ์ด ๊ธธ์ด ๋งํผ ๋ฐ๋ณตํ์ผ๋ฉด ๋๋ธ๋ค. ์๋๋ฉด 1-1.๋ก ๋์๊ฐ๋ค.
// 2. ๊ฐ์ด๋ฐ ๊ฐ ๊บผ๋ด๊ธฐ
function solution(array) {
// minNumber
let arrayCnt = 0;
let newArray = [];
while (arrayCnt < array.length) {
let minNumber = 1000;
// ๋ฐฐ์ด์์ ์ต์๊ฐ์ ์ฐพ๋ ๊ฒ
let cnt = 0;
while (cnt < array.length) {
if (minNumber > array[cnt]) {
minNumber = array[cnt];
}
cnt = cnt + 1;
}
// minNumber โ ์ต์๊ฐ
newArray.push(minNumber);
// ๋ฐฐ์ด์์ ์ฐพ์ ๊ฐ ์ง์ฐ๊ธฐ
let cnt2 = 0;
while (cnt2 < array.length) {
if (minNumber === array[cnt2]) {
array[cnt2] = 1000;
break;
}
cnt2 = cnt2 + 1;
}
arrayCnt = arrayCnt + 1;
}
return newArray[Math.floor(array.length / 2)];
}
๐ array.sort ์ฌ์ฉ
function solution (array) {
return array.sort((a,b) => a-b)[Math.floor(array.length / 2)]
}
๐ Array.prototype.sort()
: sort() ๋ฉ์๋๋ ๋ฐฐ์ด์ ์์๋ฅผ ์ ์ ํ ์์น์ ์ ๋ ฌํ ํ ๊ทธ ๋ฐฐ์ด์ ๋ฐํํฉ๋๋ค. ์ ๋ ฌ์ stable sort๊ฐ ์๋ ์ ์์ต๋๋ค. ๊ธฐ๋ณธ ์ ๋ ฌ ์์๋ ๋ฌธ์์ด์ ์ ๋์ฝ๋ ์ฝ๋ ํฌ์ธํธ๋ฅผ ๋ฐ๋ฆ
๋๋ค.
array
๊ฐ ๋งค๊ฐ๋ณ์๋ก ์ฃผ์ด์ง ๋, ์ต๋น๊ฐ์ return ํ๋๋ก solution ํจ์๋ฅผ ์์ฑํด๋ณด์ธ์. ์ต๋น๊ฐ์ด ์ฌ๋ฌ ๊ฐ๋ฉด -1์ return ํฉ๋๋ค.array
์ ๊ธธ์ด < 100array
์ ์์ < 1000์
์ถ๋ ฅ ์ #1
[1, 2, 3, 3, 3, 4]์์ 1์ 1๊ฐ 2๋ 1๊ฐ 3์ 3๊ฐ 4๋ 1๊ฐ๋ก ์ต๋น๊ฐ์ 3์
๋๋ค.
์
์ถ๋ ฅ ์ #2
[1, 1, 2, 2]์์ 1์ 2๊ฐ 2๋ 2๊ฐ๋ก ์ต๋น๊ฐ์ด 1, 2์
๋๋ค. ์ต๋น๊ฐ์ด ์ฌ๋ฌ ๊ฐ์ด๋ฏ๋ก -1์ return ํฉ๋๋ค.
์
์ถ๋ ฅ ์ #3
[1]์๋ 1๋ง ์์ผ๋ฏ๋ก ์ต๋น๊ฐ์ 1์
๋๋ค.
// 1. ์์์๋ถํฐ ์ฐจ๋ก๋๋ก ์์๋ฅผ ํ์ธํ๋ฉฐ ๊ฐฏ์๋ฅผ ์ผ๋ค.
// 2. ์ต๋น๊ฐ์ ๊ทธ๋๊ทธ๋ ๊ธฐ๋กํ๋ค.
function solution(array) {
let sortedArray = array.sort((a,b) => a-b);
var answer = 0;
let cnt = 0;
let mode = -1; // ์ต๋น๊ฐ์ด ๋ญ์ง
let modeRepeatCnt = 0; // ์ต๋น๊ฐ์ด ๋ ๋ ๋ช๋ฒ ๋ฐ๋ณตํด์ ๋๊ฑด์ง
let repeatCnt = 0; // ํ์ฌ ๋๊ฐ์ ์ซ์๊ฐ ๋ช๋ฒ ๋ฑ์ฅํ๋์ง
let beforeNumber = 0; // ์ง๊ธ ๋ณด๊ณ ์๋ ์ซ์ ์ด์ ์ซ์
let isDupMode = false;
while (cnt < array.length) {
if (beforeNumber !== array[cnt]) {
repeatCnt = 1;
} else {
repeatCnt = repeatCnt + 1;
}
if (repeatCnt === modeRepeatCnt) {
if (mode !== array[cnt]){
isDupMode = true;
}
}
if (repeatCnt > modeRepeatCnt) {
mode = array[cnt];
modeRepeatCnt = repeatCnt;
isDupMode = false;
}
beforeNumber = array[cnt];
cnt = cnt + 1;
}
if (isDupMode) return -1;
return mode;
}
n
์ด ๋งค๊ฐ๋ณ์๋ก ์ฃผ์ด์ง ๋, n
์ดํ์ ํ์๊ฐ ์ค๋ฆ์ฐจ์์ผ๋ก ๋ด๊ธด ๋ฐฐ์ด์ returnํ๋๋ก solution ํจ์๋ฅผ ์์ฑํด์ฃผ์ธ์.n
โค 100์
์ถ๋ ฅ #1
10 ์ดํ์ ํ์๊ฐ ๋ด๊ธด ๋ฐฐ์ด [1, 3, 5, 7, 9]๋ฅผ returnํฉ๋๋ค.
์
์ถ๋ ฅ #1
15 ์ดํ์ ํ์๊ฐ ๋ด๊ธด ๋ฐฐ์ด [1, 3, 5, 7, 9, 11, 13, 15]๋ฅผ returnํฉ๋๋ค.
function solution(n) {
var answer = [];
let cnt = 1;
while (cnt <= n) {
if (cnt % 2 === 1) {
answer.push(cnt);
}
cnt = cnt + 1;
}
return answer;
}