結果
問題 | No.550 夏休みの思い出(1) |
ユーザー |
|
提出日時 | 2017-08-15 23:15:29 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 171 ms / 2,000 ms |
コード長 | 732 bytes |
コンパイル時間 | 172 ms |
コンパイル使用メモリ | 82,304 KB |
実行使用メモリ | 75,716 KB |
最終ジャッジ日時 | 2024-10-13 11:08:18 |
合計ジャッジ時間 | 7,020 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 55 |
ソースコード
import math N = 1000000 def f(x,a,b,c): return x**3 + a*x**2 + b*x + c def SQRT(n): l,r= 0,10**46 while r-l>1: m = (l+r)//2 if m*m <= n: l = m else: r = m return l def main(): A,B,C = map(int,input().split()) p = -N+1 while True: if f(p,A,B,C) == 0: break p += 1 if p == 0: D = A**2 - 4*B sq = SQRT(D) q = (-A + sq) // 2 r = (-A - sq) // 2 else: D = (p*B+C)**2 + 4*C*p**3 sq = SQRT(D) q = (p*B+C + sq) // (2*p**2) r = (p*B+C - sq) // (2*p**2) ans = [p,q,r] ans.sort() print(' '.join(map(str,ans))) if __name__ == '__main__': main()