다다스는 영어 소문자로 이루어진 길이 의 글 를 완성하려고 한다. 처음에는 개의 위치가 모두 비어 있다. 글자 하나를 직접 쓰는 데에는 만큼의 힘이 든다.
글을 쓰는 수고를 줄이기 위해, 다다스는 원하는 문자열이 새겨진 도장을 하나 만들 수 있다. 도장에 새길 문자열의 길이가 라면, 도장을 만드는 데에는 만큼의 힘이 든다. 도장을 만들지 않아도 되지만, 만든다면 한 종류만 만들 수 있다.
도장은 다음과 같이 사용한다.
예를 들어, 글이 abcabca이고 도장에 abca가 새겨져 있다고 하자. 먼저 번째부터 번째 위치에 찍고, 다음으로 번째부터 번째 위치에 찍으면 글 전체를 완성할 수 있다. 번째 위치에는 a가 두 번 찍히지만 문제가 없다.
도장으로 채우지 않은 위치에는 글자를 직접 쓰면 된다. 다다스가 글 를 완성하는 데 필요한 힘의 최솟값을 구하여라.
입력은 다음과 같은 형식으로 주어진다.
각 테스트 케이스마다 글 를 완성하는 데 필요한 힘의 최솟값을 한 줄에 출력한다.
첫 번째 테스트 케이스에서는 abca 도장을 만드는 데 의 힘을 쓴다. 이 도장을 번째와 번째 위치부터 각각 찍으면 abcabca가 완성된다. 도장을 찍는 데에는 추가로 힘이 들지 않는다.
두 번째 테스트 케이스에서는 도장을 만들지 않고 다섯 글자를 직접 쓰는 것이 가장 좋다. 필요한 힘은 이다.
는 테스트 케이스의 개수이다. 각 테스트 케이스는 다음과 같다.
은 글의 길이, 는 글자 하나를 직접 쓰는 데 드는 힘, 는 도장에 새길 글자 하나당 드는 힘이다. 문자열 가 완성해야 하는 글이다.
| 4 | 47 | 추가적인 제약이 없다. |
세 번째 테스트 케이스에서는 ana 도장을 번째와 번째 위치부터 찍어 번째부터 번째 위치를 채울 수 있다. 번째 위치에는 a가 두 번 찍힌다. 남은 첫 글자 b를 직접 쓰면 총 의 힘이 든다.
첫 번째 테스트 케이스에서는 한 글자 a가 새겨진 도장을 한 번 만들고 여섯 번 찍으면 된다. 도장을 만드는 힘 만 필요하다.
두 번째 테스트 케이스에서는 글 전체인 abcd를 도장으로 만들어 한 번 찍는다. 필요한 힘은 이다.
세 번째 테스트 케이스에서는 z를 직접 쓰거나 한 글자 도장을 만들어 찍을 수 있다. 어느 방법이든 필요한 힘은 이다.