AtCoder Beginner Contest 166 D - I hate Factorization【Python】
https://atcoder.jp/contests/abc166/tasks/abc166_d
AtCoder ProblemsのRecommendationでDifficulty: 694、Solve Probability:
36%でした。
何度もWAとなってしまい、ユーザー解説
https://blog.hamayanhamayan.com/entry/2020/05/03/224316
を見たところ探索範囲が小さかったことが原因でした。
X = int(input()) # i ** 5とiを列挙 pow5 = [] for i in range(10**10): if i ** 5 > 10**20: break pow5.append([i ** 5, i]) for i in range(len(pow5)): for j in range(len(pow5)): ai5, ai1 = pow5[i] bi5, bi1 = pow5[j] if ai5 - bi5 == X: ansa = ai1 ansb = bi1 print(ansa, ansb) exit() elif ai5 - (-bi5) == X: ansa = ai1 ansb = -bi1 print(ansa, ansb) exit()