거대한 문자열
시간 제한1초메모리 제한512 MB
n과 k가 주어졌을 때, 무한 문자열 S의 길이 n인 접두사에 나타나는 서로 다른 비어 있지 않은 부분 문자열의 개수를 구합니다.
문제
크기가 인 알파벳 을 생각하자. 다음과 같이 문자열의 수열 를 정의한다.
- 모든 정수 에 대해
무한 문자열 는 모든 를 인덱스 오름차순으로 이어 붙인 문자열이다. 예를 들어 이고 은 a, 은 b, 는 c이면 은 a, 은 ab, 는 abc, 은 abca, 은 abcabcab이다. 이때 는 aababcabcaabcab...이다.
의 길이 인 접두사를 으로 표기한다. 과 가 주어질 때, 이고 의 서로 다른 비어 있지 않은 부분 문자열의 개수를 구하라.
입력
첫 줄에 테스트 케이스의 개수 ()가 주어진다. 이어지는 개의 줄에는 각각 공백으로 구분된 두 정수 와 (, )가 주어진다.
출력
개의 줄을 출력한다. 번째 줄에는 알파벳 크기가 일 때 의 서로 다른 비어 있지 않은 부분 문자열의 개수를 쓴다.