結果
問題 | No.2358 xy+yz+zx=N |
ユーザー | 👑 SPD_9X2 |
提出日時 | 2023-06-23 23:11:56 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 231 ms / 2,000 ms |
コード長 | 953 bytes |
コンパイル時間 | 283 ms |
コンパイル使用メモリ | 86,896 KB |
実行使用メモリ | 82,436 KB |
最終ジャッジ日時 | 2023-09-14 10:15:39 |
合計ジャッジ時間 | 4,019 ms |
ジャッジサーバーID (参考情報) |
judge15 / judge13 |
(要ログイン)
テストケース
テストケース表示入力 | 結果 | 実行時間 実行使用メモリ |
---|---|---|
testcase_00 | AC | 171 ms
76,444 KB |
testcase_01 | AC | 172 ms
76,216 KB |
testcase_02 | AC | 170 ms
76,340 KB |
testcase_03 | AC | 168 ms
76,440 KB |
testcase_04 | AC | 170 ms
76,144 KB |
testcase_05 | AC | 170 ms
76,468 KB |
testcase_06 | AC | 174 ms
76,424 KB |
testcase_07 | AC | 193 ms
77,816 KB |
testcase_08 | AC | 227 ms
81,936 KB |
testcase_09 | AC | 231 ms
82,436 KB |
testcase_10 | AC | 209 ms
79,136 KB |
testcase_11 | AC | 213 ms
79,408 KB |
testcase_12 | AC | 203 ms
78,732 KB |
ソースコード
""" https://yukicoder.me/problems/no/2358 全部出力なので、少ないことがわかる xを固定してみよう x(y+z)+yz = N なんか、一つしか存在しなさそうな見た目 N % gcd(x,y) = 0 N % gcd(x,z) = 0 を利用する? y = gY z = hZ gX(gY+hZ) + gYhZ = 0 x,y,z のgcdを考える? とりあえず x <= y <= z とするか… xは10^3未満 yもね ab+c(a+b) == N """ import sys import itertools N = int(input()) ans = [] for a in range(3164): for b in range(a,3164): rem = N - a*b if a+b == 0: continue if rem % (a+b) == 0: c = rem // (a+b) if b <= c: s = set() for p in itertools.permutations([a,b,c]): tup = tuple(p) s.add(tup) for tup in s: ans.append(tup) print (len(ans)) for x,y,z in ans: print (x,y,z)