목록지구정복과정 (466)
지구정복
https://www.acmicpc.net/problem/11866 11866번: 요세푸스 문제 0 첫째 줄에 N과 K가 빈 칸을 사이에 두고 순서대로 주어진다. (1 ≤ K ≤ N ≤ 1,000) www.acmicpc.net -문제해설 어레이리스트를 이용해서 출력해야될 인덱스를 StringBuffer에 저장시키고 리스트에서 삭제시킨다. 이를 계속반복하면서 리스트가 비워지면 반복문을 빠져나오고 저장된 StringBuffer를 출력한다. 이때 인덱스값 설정할 때 조금 애먹었다.. idx를 인덱스변수라고 하면 처음에 0으로 선언한다. 그리고 idx + (k+1)에다가 리스트 크기로 나눈 나머지를 idx로 설정한다. ( idx + (k+1) ) % arr.size() arr.size()가 7이고 k가 2라고 ..
https://www.acmicpc.net/problem/10866 10866번: 덱 첫째 줄에 주어지는 명령의 수 N (1 ≤ N ≤ 10,000)이 주어진다. 둘째 줄부터 N개의 줄에는 명령이 하나씩 주어진다. 주어지는 정수는 1보다 크거나 같고, 100,000보다 작거나 같다. 문제에 나와있지 www.acmicpc.net -문제해설 자바로는 배열을 이용해서 풀었다. 이때 pop_front나 pop_back, push_front같은 경우 인덱스값을 잘 활용해서 배열의 값을 한 칸씩 미루거나 땡겨줘야 한다. 파이썬은 리스트 구조여서 push같은 경우 insert( 인덱스, 삽입값 ) 메소드를 잘 활용하면 되고 pop같은 경우 pop(인덱스)를 활용하면 쉽게 풀 수 있다. -자바 package dataS..
https://www.acmicpc.net/problem/10845 10845번: 큐 첫째 줄에 주어지는 명령의 수 N (1 ≤ N ≤ 10,000)이 주어진다. 둘째 줄부터 N개의 줄에는 명령이 하나씩 주어진다. 주어지는 정수는 1보다 크거나 같고, 100,000보다 작거나 같다. 문제에 나와있지 www.acmicpc.net -문제해설 저번 포스팅인 스택과 비슷한 문제인 큐를 구현하는 문제이다. 스택에서는 ArrayList를 사용했는데 이번에는 배열을 사용해서 풀어봤다. 전역변수로 큐를 나타낼 배열과 배열의 인덱스값인 idx를 선언했다. 특히 pop할 때 배열의 값들을 앞으로 한 칸씩 땡기고 idx값도 -1을 해줌으로써 구현할 수 있었다. 파이썬은 편한게 그냥 pop( index ) 메소드사용하면 한 ..
https://www.acmicpc.net/problem/10828 10828번: 스택 첫째 줄에 주어지는 명령의 수 N (1 ≤ N ≤ 10,000)이 주어진다. 둘째 줄부터 N개의 줄에는 명령이 하나씩 주어진다. 주어지는 정수는 1보다 크거나 같고, 100,000보다 작거나 같다. 문제에 나와있지 www.acmicpc.net -문제해설 자바의 경우 ArrayList를 이용해서 풀었다. 배열로 할 경우 pop명령어의 경우 인덱스를 신경쓰는게 귀찮았기 때문이다. ArrayList를 쓰면 remove() 메소드를 사용할 수 있기 때문이다. 물론 코드의 효율은 배열을 이용하는게 더 좋다. 그리고 if문을 이용해서 명령어를 나눴는데 다른 사람 코드보니깐 switch문을 이용할 수 있었다. 나는 switch문은..