타일
시간 제한1초메모리 제한128 MB
n, k, l이 주어질 때 위치 1부터 n까지를 ±k, ±l만큼 이동하는 동치관계로 묶었을 때의 동치류 개수를 구한다.
문제
욕실 벽에 타일 개를 가로 한 줄, 높이 한 칸으로 붙여 장식용 띠를 만들려고 한다. 타일은 여러 종류가 있으며, 띠를 따라 놓인 무늬는 다음 두 주기 조건을 동시에 만족해야 한다.
- 무늬가 칸마다 반복된다: 위치 의 타일과 위치 의 타일은, 두 위치가 모두 띠 안에 있는 한 같은 종류여야 한다.
- 무늬가 칸마다 반복된다: 위치 의 타일과 위치 의 타일은, 두 위치가 모두 띠 안에 있는 한 같은 종류여야 한다.
두 조건을 모두 지키면서, 무늬가 단조롭지 않도록 서로 다른 종류의 타일을 최대한 많이 쓰고 싶다.
, , 이 주어질 때, 사용할 수 있는 서로 다른 타일의 최대 개수를 구하는 프로그램을 작성하라.
입력
첫째 줄에 정수 , 둘째 줄에 정수 , 셋째 줄에 정수 이 주어진다. (, ) 와 이 의 약수일 필요는 없다.
출력
길이 인 띠를 무늬가 칸마다도, 칸마다도 반복되도록 붙일 때 사용할 수 있는 서로 다른 타일의 최대 개수를 한 줄에 출력한다.