BOJ 1406: 에디터 1406번: 에디터첫째 줄에는 초기에 편집기에 입력되어 있는 문자열이 주어진다. 이 문자열은 길이가 N이고, 영어 소문자로만 이루어져 있으며, 길이는 100,000을 넘지 않는다. 둘째 줄에는 입력할 명령어의 개수www.acmicpc.net❓문제 설명vim, 메모장 에디터를 구현하는 문제이다.일련의 문자열이 주어지고, 명령어에 따라 커서를 옮기거나, 문자를 추가 혹은 삭제할 수 있다.명령어 'L' -> 왼쪽으로 커서 옮김명령어 'D' -> 오른쪽으로 커서 옮김명령어 'B' -> 커서 왼쪽의 문자 삭제명령어 'P $' -> 커서 왼쪽에 문자 $ 삽입 ❗️문제 풀이"ABCD" 라는 문자열이 주어지면 커서는"_A_B_C_D_" => 이런 식으로 5개의 자리에 위치할 수 있다.따라서, ..
deque
BOJ 11866 : 요세푸스 문제 0 바로가기 11866번: 요세푸스 문제 0첫째 줄에 N과 K가 빈 칸을 사이에 두고 순서대로 주어진다. (1 ≤ K ≤ N ≤ 1,000)www.acmicpc.net ❓문제 설명 문제 이해가 조금 어려웠는데, 쉽게 풀면첫 번째 제거되는 사람은 1번을 기준으로 3번이 K번째이므로 3번이 제거된다.두 번째 제거되는 사람은 4번을 기준으로 시작하여 K번째인 6번이 제거된다.세 번째 제거되는 사람은 다시 7번을 기준으로 시작하여 K번째인 2번이 제거된다. ❗️문제 풀이양방향 큐인 deque 자료구조를 이용했다. deque의 rotate 함수는 원순열을 돌리는 함수이다.deque.rotate(양수) 는 시계 방향으로, deque.rotate(음수)는 반시계 방향으로 회전한..