結果

問題 No.816 Beautiful tuples
コンテスト
ユーザー GrayCoder
提出日時 2019-04-19 22:26:14
言語 Python3
(3.14.3 + numpy 2.4.4 + scipy 1.17.1)
コンパイル:
python3 -mpy_compile _filename_
実行:
python3 _filename_
結果
AC  
実行時間 113 ms / 1,500 ms
コード長 1,016 bytes
記録
記録タグの例:
初AC ショートコード 純ショートコード 純主流ショートコード 最速実行時間
コンパイル時間 417 ms
コンパイル使用メモリ 20,696 KB
実行使用メモリ 15,360 KB
最終ジャッジ日時 2026-04-11 04:08:49
合計ジャッジ時間 3,043 ms
ジャッジサーバーID
(参考情報)
judge3_0 / judge2_1
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
other AC * 15
権限があれば一括ダウンロードができます

ソースコード

diff #
raw source code

from itertools import combinations
from functools import reduce
from operator import mul
from sys import stdin

def primeFactors(n):
    factors = []
    apnd = factors.append
    while n >= 4:
        if n % 2:
            break
        else:
            n //= 2
            apnd(2)
    i = 3
    while n >= i * i:
        if n % i:
            i += 2
        else:
            n //= i
            apnd(i)
    apnd(n)
    return factors

def main():
    A, B = map(int, input().split())

    if A == B:
        print(-1)
        return

    p = primeFactors(A + B)
    if len(p) == 1:
        print(-1)
    else:
        for i in range(1, len(p) + 1):
            comb = combinations(p, i)
            for j in comb:
                c = reduce(mul, j)
                if all((c != A,
                        c != B,
                        not (c + A) % B,
                        not (c + B) % A)):
                    print(c)
                    return
        print(-1)

input = lambda: stdin.readline()
main()
0