피보나치 수의 최대공약수
시간 제한1초메모리 제한256 MB
N번째와 M번째 피보나치 수의 최대공약수를 1000000007로 나눈 나머지를 구합니다.
문제
피보나치 수열은 , 이고 일 때 로 정의한다. 앞부분을 늘어놓으면 0, 1, 1, 2, 3, 5, 8, 13, 21로 이어진다.
점화식을 풀면 일반항은 다음과 같다.
피보나치 수열은 성질이 많다. 예를 들어 다음 두 식이 성립한다.
이 문제에서는 두 피보나치 수의 최대공약수를 구한다. 두 정수 , 이 주어지면 을 계산한다. 값이 매우 크므로 로 나눈 나머지를 출력한다. 나머지는 최대공약수를 구한 뒤에 취한다.
입력
첫째 줄에 테스트 케이스의 개수 가 주어진다. ()
다음 개의 줄에 각각 두 정수 , 이 공백 하나로 구분되어 주어진다. ()
출력
각 테스트 케이스마다 을 로 나눈 나머지를 한 줄에 하나씩 출력한다.