만드는 중입니다

아직 만드는 중이라 바뀔 수 있습니다

약수와 배수로 수 맞히기

면접 대비

시간 제한1초메모리 제한512 MB

요약
A, B, C, D가 주어질 때 A는 N의 약수이고 B는 아니며 N은 C의 약수이고 D의 약수가 아닌 가장 작은 N을 구하거나 -1을 출력한다.
난이도

보통10점 중 5점

유형
정수론, 수학, 완전 탐색
정답자
아직 제출이 없습니다

문제

양의 정수 NN을 하나 생각한다. 그다음 NN의 약수 AA를 하나 말하고, NN의 약수가 아닌 수 BB를 하나 말한다. 이어서 NN의 배수 CC를 하나, NN의 배수가 아닌 수 DD를 하나 말한다. 그러면 처음에 생각한 수를 맞힐 수 있다.

마술처럼 보이지만 수학이다. AA, BB, CC, DD를 알 때 원래의 NN을 찾을 수 있을까? 조건에 맞는 NN이 여러 개일 수도 있다.

네 수 AA, BB, CC, DD가 주어지면 조건을 만족하는 가장 작은 NN을 구하는 프로그램을 작성한다. 그런 NN이 하나도 없으면 이를 알린다.

NN은 다음 네 조건을 모두 만족하는 양의 정수이다.

  • AA는 NN의 약수이다.
  • BB는 NN의 약수가 아니다.
  • CC는 NN의 배수이다.
  • DD는 NN의 배수가 아니다.

입력

첫째 줄에 네 정수 AA, BB, CC, DD가 공백으로 구분되어 주어진다.

제한

  • 1≤A,B,C,D≤1091 \le A, B, C, D \le 10^9

출력

조건을 만족하는 NN이 있으면 그중 가장 작은 값을 한 줄에 출력한다. 그런 NN이 없으면 −1-1을 한 줄에 출력한다.

예제2

  1. 예제 1

    입력
    2 12 8 2
    
    예상 출력
    4
    
  2. 예제 2

    입력
    3 4 60 105
    
    예상 출력
    6