https://www.acmicpc.net/problem/2164
2164๋ฒ: ์นด๋2
N์ฅ์ ์นด๋๊ฐ ์๋ค. ๊ฐ๊ฐ์ ์นด๋๋ ์ฐจ๋ก๋ก 1๋ถํฐ N๊น์ง์ ๋ฒํธ๊ฐ ๋ถ์ด ์์ผ๋ฉฐ, 1๋ฒ ์นด๋๊ฐ ์ ์ผ ์์, N๋ฒ ์นด๋๊ฐ ์ ์ผ ์๋์ธ ์ํ๋ก ์์๋๋ก ์นด๋๊ฐ ๋์ฌ ์๋ค. ์ด์ ๋ค์๊ณผ ๊ฐ์ ๋์์ ์นด๋๊ฐ ํ ์ฅ ๋จ์ ๋๊น์ง ๋ฐ๋ณตํ๊ฒ ๋๋ค. ์ฐ์ , ์ ์ผ ์์ ์๋ ์นด๋๋ฅผ ๋ฐ๋ฅ์ ๋ฒ๋ฆฐ๋ค. ๊ทธ ๋ค์, ์ ์ผ ์์ ์๋ ์นด๋๋ฅผ ์ ์ผ ์๋์ ์๋ ์นด๋ ๋ฐ์ผ๋ก ์ฎ๊ธด๋ค. ์๋ฅผ ๋ค์ด N=4์ธ ๊ฒฝ์ฐ๋ฅผ ์๊ฐํด ๋ณด์. ์นด๋๋ ์ ์ผ ์์์๋ถํฐ 1234 ์ ์์๋ก ๋์ฌ์๋ค. 1์ ๋ฒ๋ฆฌ
www.acmicpc.net
์ฝ๋
package Silver_IV;
import java.util.*;
public class ์นด๋22_2164 {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
Queue<Integer> queue = new LinkedList<Integer>();
int N = scan.nextInt();
for(int i=1; i<=N; i++)
queue.add(i);
while(queue.size() != 1) {
queue.poll();
int num = queue.poll();
queue.add(num);
}
System.out.println(queue.poll());
scan.close();
}
}
ํ์์ ๊ฐ์ฅ ๋จผ์ ์ ์ฅ๋ ๊ฐ์ ์ ๊ฑฐํ๋ poll() ๋ฉ์๋์,
๊ทธ๋ค์์ ๊ฐ์ num์ ์ ์ฅํด์ ๋ฒ๋ฆฌ๊ณ , ๋ง์ง๋ง์ add(), offer() ํด์ฃผ๋ ๋ฉ์๋๋ง ์ด์ฉํ๋ฉด
์ฝ๊ฒ ํด๊ฒฐ ํ ์ ์๋ค.
'Algorithm' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
ํ๋ก๊ทธ๋๋จธ์ค[Java] - ํฐ ์ ๋ง๋ค๊ธฐ (0) | 2020.01.22 |
---|---|
ํ๋ก๊ทธ๋๋จธ์ค[Java] - ์ซ์์ ํํ (0) | 2020.01.21 |
[๋ฐฑ์ค] 13458๋ฒ: ์ํ๊ฐ๋ (0) | 2020.01.21 |
[๋ฐฑ์ค] 11651๋ฒ: ์ขํ ์ ๋ ฌํ๊ธฐ2 (0) | 2020.01.20 |
[๋ฐฑ์ค] 10773๋ฒ: ์ ๋ก (0) | 2020.01.20 |
๋๊ธ