Contents

๊ณต ๋˜์ง€๊ธฐ (with.Java)

   Feb 8, 2024     2 min read

โ€œ๊ณต ๋˜์ง€๊ธฐโ€ ๋ฌธ์ œ์— ๋Œ€ํ•˜์—ฌ ์•Œ์•„๋ณธ ๊ธ€์ž…๋‹ˆ๋‹ค.

์ฝ”๋”ฉ ํ…Œ์ŠคํŠธ ๋ฌธ์ œ๋ฅผ ํ’€๋ฉฐ, ํ’€์—ˆ๋˜ ๋ฌธ์ œ์— ๋Œ€ํ•œ ํšŒ๊ณ ์™€ ๋‹ค๋ฅธ ํ’€์ด ๋ฐฉ๋ฒ•์„ ์•Œ์•„๋ณด๋ฉฐ, ์•Œ์•„๊ฐ€๊ณ ์ž ํ•ฉ๋‹ˆ๋‹ค.

๋ฌธ์ œ์— ๋Œ€ํ•ด ๋จผ์ € ์•Œ์•„๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

๋ฌธ์ œ

๋จธ์“ฑ์ด๋Š” ์นœ๊ตฌ๋“ค๊ณผ ๋™๊ทธ๋ž—๊ฒŒ ์„œ์„œ ๊ณต ๋˜์ง€๊ธฐ ๊ฒŒ์ž„์„ ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

๊ณต์€ 1๋ฒˆ๋ถ€ํ„ฐ ๋˜์ง€๋ฉฐ ์˜ค๋ฅธ์ชฝ์œผ๋กœ ํ•œ ๋ช…์„ ๊ฑด๋„ˆ๋›ฐ๊ณ  ๊ทธ๋‹ค์Œ ์‚ฌ๋žŒ์—๊ฒŒ๋งŒ ๋˜์งˆ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์นœ๊ตฌ๋“ค์˜ ๋ฒˆํ˜ธ๊ฐ€ ๋“ค์–ด์žˆ๋Š” ์ •์ˆ˜ ๋ฐฐ์—ด numbers์™€ ์ •์ˆ˜ K๊ฐ€ ์ฃผ์–ด์งˆ ๋•Œ, k๋ฒˆ์งธ๋กœ ๊ณต์„ ๋˜์ง€๋Š” ์‚ฌ๋žŒ์˜ ๋ฒˆํ˜ธ๋Š” ๋ฌด์—‡์ธ์ง€ return ํ•˜๋„๋ก solution ํ•จ์ˆ˜๋ฅผ ์™„์„ฑํ•ด๋ณด์„ธ์š”.

์ œํ•œ์‚ฌํ•ญ

  • 2 < numbers์˜ ๊ธธ์ด < 100
  • 0 < k < 1,000
  • numbers์˜ ์ฒซ ๋ฒˆ์งธ์™€ ๋งˆ์ง€๋ง‰ ๋ฒˆํ˜ธ๋Š” ์‹ค์ œ๋กœ ๋ฐ”๋กœ ์˜†์— ์žˆ์Šต๋‹ˆ๋‹ค.
  • numbers๋Š” 1๋ถ€ํ„ฐ ์‹œ์ž‘ํ•˜๋ฉฐ ๋ฒˆํ˜ธ๋Š” ์ˆœ์„œ๋Œ€๋กœ ์˜ฌ๋ผ๊ฐ‘๋‹ˆ๋‹ค.

์ž…์ถœ๋ ฅ ์˜ˆ์‹œ

numberskresult
[1, 2, 3, 4]23
[1, 2, 3, 4, 5, 6]53
[1, 2, 3]32

๋ฌธ์ œ์— ๋Œ€ํ•œ ๋‚˜์˜ ํ’€์ด

class Solution {
    public int solution(int[] numbers, int k) {
        int answer = 0;
        answer = numbers[2 * (k -1) % numbers.length];
        return answer;
    }
}

ํ’€์ด ์„ค๋ช…

์—ฌ๊ธฐ์„œ numbers.length๋Š” ๋ฐฐ์—ด numbers์˜ ๊ธธ์ด๋ฅผ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค.

์ฃผ์–ด์ง„ ๋ฌธ์ œ์—์„œ๋Š” ์˜ค๋ฅธ์ชฝ์œผ๋กœ ํ•œ ๋ช…์„ ๊ฑด๋„ˆ๋›ฐ๋ฉฐ ๊ณต์„ ๋˜์ง€๋Š”๋ฐ, ์ด๋ฅผ ๊ตฌํ˜„ํ•˜๊ธฐ ์œ„ํ•ด (k - 1)์— 2๋ฅผ ๊ณฑํ•˜๊ณ  numbers.length๋กœ ๋‚˜๋ˆˆ ๋‚˜๋จธ์ง€๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ด๋ ‡๊ฒŒ ํ•จ์œผ๋กœ์จ ์˜ค๋ฅธ์ชฝ์œผ๋กœ ํ•œ ๋ช…์„ ๊ฑด๋„ˆ๋›ฐ์–ด k๋ฒˆ์งธ๋กœ ๊ณต์„ ๋˜์ง€๋Š” ์‚ฌ๋žŒ์˜ ๋ฒˆํ˜ธ๋ฅผ ์ฐพ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์˜ˆ๋ฅผ ๋“ค์–ด, ๋ฐฐ์—ด numbers๊ฐ€ [1, 2, 3, 4, 5]์ด๊ณ , k๊ฐ€ 3์ธ ๊ฒฝ์šฐ๋ฅผ ์ƒ๊ฐํ•ด๋ด…์‹œ๋‹ค.

  • ์ฒ˜์Œ์—๋Š” 1์ด ๊ณต์„ ๋˜์ง‘๋‹ˆ๋‹ค. (0๋ฒˆ์งธ ๋จธ์“ฑ์ด)
  • ๋‹ค์Œ์œผ๋กœ 3์ด ๊ณต์„ ๋˜์ง‘๋‹ˆ๋‹ค. (2๋ฒˆ์งธ ๋จธ์“ฑ์ด)
  • ๊ทธ๋ฆฌ๊ณ  5๊ฐ€ ๊ณต์„ ๋˜์ง‘๋‹ˆ๋‹ค. (4๋ฒˆ์งธ ๋จธ์“ฑ์ด) ์ด๋ฅผ ํ‘œํ˜„ํ•œ ์ฝ”๋“œ๊ฐ€ numbers[2 * (k - 1) % numbers.length]์ž…๋‹ˆ๋‹ค.

๋‚˜๋จธ์ง€ ์—ฐ์‚ฐ์ž๋ฅผ ์‚ฌ์šฉํ•จ์œผ๋กœ์จ ๋ฐฐ์—ด์„ ์ˆœํ™˜ํ•˜๋ฉด์„œ k๋ฒˆ์งธ๋กœ ๊ณต์„ ๋˜์ง€๋Š” ๋จธ์“ฑ์ด์˜ ๋ฒˆํ˜ธ๋ฅผ ์ฐพ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ถ”๊ฐ€ ๋‚˜๋จธ์ง€ ์—ฐ์‚ฐ์ž๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ๋ฐฐ์—ด์„ ์ˆœํ™˜ํ•˜๋Š” ํšจ๊ณผ๋ฅผ ์–ป์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋ฐฐ์—ด์˜ ๊ธธ์ด๋ฅผ n์ด๋ผ๊ณ  ํ•  ๋•Œ, ์ธ๋ฑ์Šค i์— ๋Œ€ํ•ด i % n์€ ๋ฐฐ์—ด์„ ์ˆœํ™˜ํ•˜๋ฉด์„œ ๋ฐ˜๋ณต๋ฉ๋‹ˆ๋‹ค.

์ด๋ฅผ ์ด์šฉํ•˜์—ฌ ๋ฐฐ์—ด์—์„œ ํŠน์ • ์œ„์น˜์˜ ๊ฐ’์„ ๊ฐ€์ ธ์˜ฌ ๋•Œ, ๋ฐฐ์—ด์˜ ๊ธธ์ด๋กœ ๋‚˜๋ˆˆ ๋‚˜๋จธ์ง€๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ํŽธ๋ฆฌํ•˜๊ฒŒ ์ˆœํ™˜ ๋™์ž‘์„ ๊ตฌํ˜„ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์˜ˆ๋ฅผ ๋“ค์–ด, ๋ฐฐ์—ด์˜ ๊ธธ์ด๊ฐ€ 5์ธ ๊ฒฝ์šฐ:

  • 0 % 5๋Š” 0
  • 1 % 5๋Š” 1
  • 2 % 5๋Š” 2
  • 3 % 5๋Š” 3
  • 4 % 5๋Š” 4
  • 5 % 5๋Š” ๋‹ค์‹œ 0
  • 6 % 5๋Š” 1

์ด๋Ÿฐ ์‹์œผ๋กœ ๋‚˜๋จธ์ง€ ์—ฐ์‚ฐ์„ ํ†ตํ•ด ๋ฐฐ์—ด์˜ ์ธ๋ฑ์Šค๋ฅผ ๊ณ„์‚ฐํ•˜๋ฉด, ๋ฐฐ์—ด์ด ์ˆœํ™˜ํ•˜๋Š” ํšจ๊ณผ๋ฅผ ์–ป์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ด๋ฅผ ํ†ตํ•ด ์ฃผ๊ธฐ์ ์œผ๋กœ ๋ฐ˜๋ณต๋˜๋Š” ๋ฐฐ์—ด ์š”์†Œ์— ์‰ฝ๊ฒŒ ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.