-
[백준] 2164번 : 카드2 - 자바(JAVA)알고리즘/백준 2022. 8. 24. 00:01
https://www.acmicpc.net/problem/2164
문제 해석
Stream을 통해서 N까지 번호를 생성하고 LinkedList를 통해 removeFirst, removeLast 등의 연산을 통해 효율적으로 카드 제거 및 옮기기를 수행합니다.
코드
import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.LinkedList; import java.util.stream.Collectors; import java.util.stream.IntStream; public class Main_2164_카드2 { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); int N = Integer.parseInt(br.readLine()); LinkedList<Integer> card = IntStream.rangeClosed(1, N).boxed().collect(Collectors.toCollection(LinkedList::new)); int result = 0; while(true){ result = card.removeFirst(); if(card.isEmpty()){ System.out.println(result); break; } int move = card.removeFirst(); card.addLast(move); } } }
'알고리즘 > 백준' 카테고리의 다른 글
[백준] 1620번 : 나는야 포켓몬 마스터 이다솜 - 자바(JAVA) (0) 2022.08.28 [백준] 10814번 : 나이순 정렬 (0) 2022.08.25 [백준] 16953번 : A -> B - 자바(JAVA) (0) 2022.08.22 [백준] 1181번 : 단어 정렬 - 자바(JAVA) (0) 2022.08.21 [백준] 1018번 : 체스판 다시 칠하기 - 자바(JAVA) (0) 2022.08.20