package main import "fmt" func main() { var a, b int _, _ = fmt.Scan(&a, &b) check := func(c int) bool { return a != c && b != c && (a+b)%c == 0 && (b+c)%a == 0 && (c+a)%b == 0 } // 1が満たすかのチェック ans := 1 if check(ans) { fmt.Println(ans) return } // 素因数分解をしながら、小さい方から確認していく n := a + b nums := make([]int, n+1) for i := 2; i <= n; i++ { if nums[i] == 0 { for j := i + i; j <= n; j += i { nums[j] = 1 } for n%i == 0 { ans *= i n /= i if check(ans) { fmt.Println(ans) return } } } } fmt.Println(-1) }