๊ด€๋ฆฌ ๋ฉ”๋‰ด

Binary Journey

[ํ…Œ์ฝ”ํ…Œ์ฝ”1.5 4-01] ๊ณต ๋˜์ง€๊ธฐ ๋ณธ๋ฌธ

Algorithm/ํ…Œ์ฝ”ํ…Œ์ฝ”1.5(2025)

[ํ…Œ์ฝ”ํ…Œ์ฝ”1.5 4-01] ๊ณต ๋˜์ง€๊ธฐ

binaryJournalist 2025. 2. 21. 13:43
๋ฐ˜์‘ํ˜•
๐Ÿ’กํ…Œ์ฝ”ํ…Œ์ฝ” ์‹œ์ฆŒ 1.5 4ํšŒ ๋ชจ์ž„ off-site ๋ฌธ์ œ ํ’€์ด์ž…๋‹ˆ๋‹ค. (2025.02.15)

 

๋ฌธ์ œ

์ถœ์ฒ˜: ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค - ๊ณต ๋˜์ง€๊ธฐ

 

๋‚ด์šฉ

 

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

 

๊ธฐ๋กํ•˜๊ธฐ

๐Ÿ’ก ์–ด๋””๊นŒ์ง€ ์ƒ๊ฐํ•ด๋ดค๋Š”์ง€ ๋‹จ๊ณ„์ ์œผ๋กœ ๊ธฐ๋กํ•ด๋ด…๋‹ˆ๋‹ค.

์–ด๋–ค ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ์ ์šฉํ•˜๋ ค ํ–ˆ๋‚˜์š”?

๋“ฑ์ฐจ์ˆ˜์—ด์„ ์‚ฌ์šฉํ•œ๋‹ค.

์ ์šฉ ๊ทผ๊ฑฐ๋Š” ๋ฌด์—‡์ธ๊ฐ€์š”?

์ œํ•œ์‚ฌํ•ญ ๋ณด๋ฉด "numbers๋Š” 1๋ถ€ํ„ฐ ์‹œ์ž‘ํ•˜๋ฉฐ ๋ฒˆํ˜ธ๋Š” ์ˆœ์„œ๋Œ€๋กœ ์˜ฌ๋ผ" ๊ฐ€๊ธฐ ๋•Œ๋ฌธ์— 1๋ถ€ํ„ฐ ๊ฐ„๊ฒฉ์ด 2์”ฉ ์ฆ๊ฐ€ํ•˜๋Š” ๋“ฑ์ฐจ์ˆ˜์—ด์ž„์„ ์•Œ ์ˆ˜ ์žˆ๋‹ค.

 

ํ’€์ด

ํ’€์ด ์‹œ๊ฐ„

์‹œ์ž‘ ์‹œ๊ฐ ์ข…๋ฃŒ ์‹œ๊ฐ ์ด ์†Œ์š” ์‹œ๊ฐ„
    5๋ถ„

 

๋ฌธ์ œ ๋ถ„์„

์ œ์•ฝ ์‚ฌํ•ญ ํŒŒ์•… & ํ…Œ์ŠคํŠธ ์ผ€์ด์Šค ์ž‘์„ฑ

 

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

 

์ž…๋ ฅ๊ฐ’ ๋ถ„์„

๐Ÿ’ก ์ž…๋ ฅ๊ฐ’์„ ๋ถ„์„ํ•˜๋ฉด ๋ฌธ์ œ์—์„œ ์š”๊ตฌํ•˜๋Š” ์•Œ๊ณ ๋ฆฌ์ฆ˜์˜ ์‹œ๊ฐ„ ๋ณต์žก๋„๋ฅผ ๊ฐ„์ ‘์ ์œผ๋กœ ํŒŒ์•…ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ž…์ถœ๋ ฅ ์˜ˆ
numbers k result
[1, 2, 3, 4] 2 3
[1, 2, 3, 4, 5, 6] 5 3
[1, 2, 3] 3 2

 

์ž…์ถœ๋ ฅ ์˜ˆ #1

  • 1๋ฒˆ์€ ์ฒซ ๋ฒˆ์งธ๋กœ 3๋ฒˆ์—๊ฒŒ ๊ณต์„ ๋˜์ง‘๋‹ˆ๋‹ค.
  • 3๋ฒˆ์€ ๋‘ ๋ฒˆ์งธ๋กœ 1๋ฒˆ์—๊ฒŒ ๊ณต์„ ๋˜์ง‘๋‹ˆ๋‹ค.

 

์˜์‚ฌ ์ฝ”๋“œ ์ž‘์„ฑ

๐Ÿ’ก ์˜์‚ฌ ์ฝ”๋“œ๋Š” ๋™์ž‘ ์ค‘์‹ฌ์œผ๋กœ ์ž‘์„ฑํ•˜๋Š” ๊ฒƒ์ด ์ค‘์š”ํ•ฉ๋‹ˆ๋‹ค.

๐Ÿ’ก ์˜์‚ฌ ์ฝ”๋“œ๋Š” ๋ฌธ์ œ ํ•ด๊ฒฐ ์ˆœ์„œ๋กœ ์ž‘์„ฑํ•ฉ๋‹ˆ๋‹ค.

๐Ÿ’ก ์˜์‚ฌ ์ฝ”๋“œ๋ฅผ ์ถฉ๋ถ„ํžˆ ํ…Œ์ŠคํŠธํ•ด๋ด…๋‹ˆ๋‹ค.

 

์ œํ•œ์‚ฌํ•ญ ๋ณด๋ฉด "numbers๋Š” 1๋ถ€ํ„ฐ ์‹œ์ž‘ํ•˜๋ฉฐ ๋ฒˆํ˜ธ๋Š” ์ˆœ์„œ๋Œ€๋กœ ์˜ฌ๋ผ" ๊ฐ€๊ธฐ ๋•Œ๋ฌธ์— 1๋ถ€ํ„ฐ ๊ฐ„๊ฒฉ์ด 2์”ฉ ์ฆ๊ฐ€ํ•œ k๋ฒˆ์งธ ์ˆ˜๋ฅผ ๋ฐ˜ํ™˜ํ•œ๋‹ค.

 

 

๊ตฌํ˜„

class Solution {
    public int solution(int[] numbers, int k) {
        // ๋“ฑ์ฐจ์ˆ˜์—ด (a + (n - 1) * d)
        return 1 + (k - 1) * 2 % numbers.length;
    }
}

 

๋ณต๊ธฐํ•˜๊ธฐ

 

๋‹ต์•ˆ๊ณผ ๋‚˜์˜ ํ’€์ด๋ฅผ ๋น„๊ตํ•ด๋ณด์„ธ์š”

์ถ”์ฒœ์„ ๊ฐ€์žฅ ๋งŽ์ด ๋ฐ›์€ ํ’€์ด๋„ ๋“ฑ์ฐจ์ˆ˜์—ด์„ ์ด์šฉํ–ˆ๋‹ค.

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

 

์š”์•ฝํ•˜๊ธฐ

  • ํ๋ฅผ ์‚ฌ์šฉํ•ด์•ผ ํ•˜๋Š”๋ฐ ์‚ฌ์šฉ ์•ˆ ํ•จ..!
๋ฐ˜์‘ํ˜•