๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

ํ”„์—” ๊ณต๋ถ€/๐Ÿซง ์•Œ๊ณ ๋ฆฌ์ฆ˜ ๊ณต๋ถ€

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค/Javascript] ๊ณต ๋˜์ง€๊ธฐ || ์ฝ”๋”ฉํ…Œ์ŠคํŠธ

728x90

<ํ‹€๋ฆฐ ๋ฐฉ๋ฒ•>

function solution(numbers, k) {
    let number = 2 * k - 1;
    number = number > numbers.length ? number % numbers.length : number;
    console.log(number);
    return number;
}

์ฒ˜์Œ์—” ์ˆซ์ž ์ž์ฒด๋ฅผ ๊ตฌํ•˜๋ฉด ๋  ๊ฒƒ ๊ฐ™์•„ ์ด๋ ‡๊ฒŒ ์ฝ”๋“œ์„ ์งฐ๋‹ค.

๊ทผ๋ฐ ๋ฌธ์ œ ์ œ์ถœ ์‹œ 20, 22 ์ผ€์ด์Šค์—์„œ ํ†ต๊ณผ๊ฐ€ ์•ˆ๋จ. 

 

๊ทธ๋ž˜์„œ 

ํ•˜๋‚˜์”ฉ ๋Œ๋ ค๋ดค๋‹ค.

k === 5 ์ธ ๊ฒฝ์šฐ, 3์ด ๋‚˜์™€์•ผํ•˜๋Š”๋ฐ 0์ด ๋‚˜์˜ด. 

=> ๋‚˜๋จธ์ง€ ๊ฐ’์„ ์ด์šฉํ•˜๊ธฐ ๋•Œ๋ฌธ์— 0์ด ๋‚˜์˜ฌ ์ˆ˜๋„ ์žˆ๋‹ค.

๊ทธ๋Ÿผ ์ˆซ์ž ๋ง๊ณ  index ๋ฅผ ์ด์šฉํ•ด์•ผ๊ฒ ๋‹ค ์ƒ๊ฐํ•จ. 

 

๊ทผ๋ฐ numbers ์˜ length ๋ณด๋‹ค  index ๋Š” ์ž‘์€ ์ˆ˜๊ฐ€ ๋“ค์–ด์™€๋„ ๋‚˜๋จธ์ง€ ๊ตฌํ•˜๋ฉด ๋˜‘๊ฐ™์ด ๋‚˜์˜ค๋Š”๋ฐ?

๋ผ๋Š” ์ƒ๊ฐ์ด ๋“ค์–ด numbers.length ๋ณด๋‹ค ํด ๋•Œ ๋‚˜๋ˆˆ๋‹ค๋Š” ์กฐ๊ฑด์„ ์—†์•ด๋‹ค.

 

<๋งž์€ ๋ฐฉ๋ฒ•>

function solution(numbers, k) {
    let index = 2 * (k - 1) % numbers.length;
    return numbers[index];
}

์ฒ˜์Œ ๋˜์ง€๋Š”๊ฑด ๋ฌด์กฐ๊ฑด 1๋ฒˆ์—์„œ ์‹คํ–‰๋˜๋‹ˆ, k-1 ์„ ํ•ด์„œ 1๋ฒˆ์„ ์ œ์™ธํ•œ ์ดํ›„์˜ index๋ฅผ ๊ตฌํ–ˆ๋‹ค.

๋ฐฐ์—ด์˜ ๊ธธ์ด๋กœ ๋‚˜๋ˆˆ ๋‚˜๋จธ์ง€๋Š” ๊ธธ์ด ์ด๋‚ด์˜ ์ˆซ์ž๊ฐ€ ๋‚˜์˜จ๋‹ค.

๊ธธ์ด๊ฐ€ 4๋ผ๋ฉด -> index๋Š” 0, 1, 2, 3

index๋ฅผ ๊ตฌํ–ˆ์œผ๋‹ˆ, numbers ์—์„œ ํ•ด๋‹น ๊ฐ’์„ return ํ•ด์ฃผ๊ธฐ๋งŒ ํ•˜๋ฉด ๋œ๋‹ค. 

 

 

์˜ˆ์ „์— ๋ณต์žกํ•˜๊ฒŒ ์ƒ๊ฐํ•˜๋‹ค๊ฐ€ ๋„ˆ๋ฌด ์˜ค๋ž˜๊ฑธ๋ ค์„œ ํ•œ๋ฒˆ ํฌ๊ธฐํ–ˆ์—ˆ๋Š”๋ฐ, 

๊น”๋”ํ•˜๊ฒŒ ํ’€์–ด๋‚ด์„œ ๋ฟŒ๋“ฏํ•˜๋‹ค ๐Ÿฅฐ

 

728x90
๋ฐ˜์‘ํ˜•