문제 링크 : www.acmicpc.net/problem/1593 1593번: 문자 해독 첫째 줄에 고고학자들이 찾고자 하는 단어 W의 길이 g와 발굴된 벽화에서 추출한 문자열 S의 길이 |S|가 빈 칸을 사이에 두고 주어진다. (1≤g≤3000, g≤|S|≤3,000,000) 둘째 줄에 W, 셋째 줄에 S의 실 www.acmicpc.net 이 문제는 실수를 여러번 겪었다. 처음에는 문자열 W의 조합을 next_permutation 함수로 구하여 그 값을 찾는 과정을 진행했는데, 번번히 시간초과가 나왔다. 문제를 자세히 읽어보니 W의 길이는 최대 3000, S의 길이는 최대 3,000,000이라서 시간초과가 나올 수 밖에 없는 구조임을 깨달았다. 문자열 W의 조합 3000!만 고려해도 시간초과는 정해진 ..