๊ธฐ๋ก๋ฐฉ

BOJ_2164 : ์นด๋“œ2 ๋ณธ๋ฌธ

CodingTest/Java

BOJ_2164 : ์นด๋“œ2

Soom_1n 2022. 11. 7. 22:03

๐Ÿ‘‰ ๋ฌธ์ œ๋งํฌ

 

2164๋ฒˆ: ์นด๋“œ2

N์žฅ์˜ ์นด๋“œ๊ฐ€ ์žˆ๋‹ค. ๊ฐ๊ฐ์˜ ์นด๋“œ๋Š” ์ฐจ๋ก€๋กœ 1๋ถ€ํ„ฐ N๊นŒ์ง€์˜ ๋ฒˆํ˜ธ๊ฐ€ ๋ถ™์–ด ์žˆ์œผ๋ฉฐ, 1๋ฒˆ ์นด๋“œ๊ฐ€ ์ œ์ผ ์œ„์—, N๋ฒˆ ์นด๋“œ๊ฐ€ ์ œ์ผ ์•„๋ž˜์ธ ์ƒํƒœ๋กœ ์ˆœ์„œ๋Œ€๋กœ ์นด๋“œ๊ฐ€ ๋†“์—ฌ ์žˆ๋‹ค. ์ด์ œ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๋™์ž‘์„ ์นด๋“œ๊ฐ€

www.acmicpc.net



๐Ÿ”ธ ๋ฌธ์ œ ๋ถ„์„ ๐Ÿ”ธ

  • ํ์— 1๊ฐœ์˜ ์›์†Œ๊ฐ€ ๋‚จ์„๋•Œ๊นŒ์ง€ ๊ณ„์‚ฐ์„ ๋ฐ˜๋ณตํ•œ๋‹ค.
    • ๋งจ ์•ž ์›์†Œ๋ฅผ ์ œ๊ฑฐํ•œ๋‹ค(poll).
    • ๋‹ค์‹œ ๋งจ ์•ž ์›์†Œ๋ฅผ ๋นผ์„œ ๊ฐ€์žฅ ์•„๋ž˜์— ๋„ฃ๋Š”๋‹ค(add(poll)).
  • ๋งˆ์ง€๋ง‰ ์›์†Œ๋ฅผ ์ถœ๋ ฅํ•œ๋‹ค.

๐Ÿ”ธ ์ฝ”๋“œ ๐Ÿ”ธ

import java.util.LinkedList;
import java.util.Queue;
import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt();

        Queue<Integer> queue = new LinkedList<>();
        for (int i = 1; i <= n; i++) queue.add(i);

        while (queue.size() > 1){
            queue.poll();
            queue.add(queue.poll());
        }
        System.out.println(queue.poll());
    }
}

๐Ÿ”ธ ์ฝ”๋“œ ํ•ด์„ ๐Ÿ”ธ

  • Queue ํด๋ž˜์Šค๋ฅผ ํ๋กœ ์‚ฌ์šฉํ•ด์„œ ๊ณ„์‚ฐ์„ ์ˆ˜ํ–‰ํ•œ๋‹ค.

๐Ÿ”ธ end ๐Ÿ”ธ

  • ์ด๋ฏธ python์œผ๋กœ ํ’€์—ˆ๋˜ ๋ฌธ์ œ์ธ๋ฐ, java๋กœ ๋‹ค์‹œ ํ•œ ๋ฒˆ ํ’€์ดํ–ˆ๋‹ค.
  • Queue<Integer>๋ฅผ ์ธ์Šคํ„ด์Šคํ™” ํ•  ๋•Œ new LinkedList<>()๋กœ ๋งํฌ๋“œ ๋ฆฌ์ŠคํŠธ์—์„œ ํ•˜๋Š”๊ฑธ ๋ฐฐ์› ๋‹ค.

728x90

'CodingTest > Java' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

BOJ_2750 : ์ˆ˜ ์ •๋ ฌํ•˜๊ธฐ  (0) 2022.11.08
BOJ_11286 : ์ ˆ๋Œ“๊ฐ’ ํž™  (0) 2022.11.07
BOJ_17298 : ์˜คํฐ์ˆ˜  (0) 2022.11.07
BOJ_1874 : ์Šคํƒ ์ˆ˜์—ด  (0) 2022.11.07
BOJ_11003 : ์ตœ์†Ÿ๊ฐ’ ์ฐพ๊ธฐ  (0) 2022.11.03