[C++] 백준 18870: 좌표 압축
문제 이해- N개의 좌표: X1, ..., Xn 이 있다.- Xi를 좌표 압축한 결과 Xi'의 값은 Xi > Xj를 만족하는 서로 다른 좌표 Xj의 개수와 같아야 한다. - 시간 제한: 2초- 메모리 제한: 512MB N: 좌표의 개수 (1 ~ 1,000,000, 10^6)Xi: 좌표 (-10^9 ~ 10^9) X1', ..., Xn'을 공백으로 구분하여 출력하라. 문제 풀이배열을 두 개 사용하여하나는 원본 배열,하나는 중복된 값을 제거한 정렬된 배열 형태로 둔 뒤에,비교하여 순서를 출력하면 될 것 같았다. 중복된 값을 제거하고 정렬하는 건 vector에 내장된 unique 함수를 이용하였는데 다음과 같다.sort(v.begin(), v.end());v.erase(unique(v.begin(), v...
[C++] 백준 1406: 에디터
문제 이해- 한 줄로 된 에디터를 구현하라.- 에디터는 영어 소문자만 기록이 가능하고, 최대 600,000 글자까지 지원한다.- 커서는 문장의 맨 앞, 중간, 맨 뒤까지 어디든 위치가 가능하며, 길이가 L인 문자열에서는 L+1가지의 위치에 있을 수 있다.- 명령어-- L: 커서를 왼쪽으로 한 칸 옮김 (커서가 문장의 맨 앞이면 무시됨)-- D: 커서를 오른족으로 한 칸 옮김 ( 커서가 문장의 맨 뒤이면 무시됨)-- B: 커서 왼쪽에 있는 문자를 삭제-- P $: $라는 문자를 커서 왼쪽에 추가- 커서의 처음 위치는 문장의 맨 뒤이다. - 문자열 (길이가 N(1 ~ 100,000, 10^5), 소문자로만 구성됨)- M: 입력할 명령어의 개수 (1~500,000, 10^5)- 명령어들 - 모든 명령어를 수행..