結果
問題 | No.551 夏休みの思い出(2) |
ユーザー |
|
提出日時 | 2017-07-29 03:14:26 |
言語 | Python3 (3.13.1 + numpy 2.2.1 + scipy 1.14.1) |
結果 |
TLE
|
実行時間 | - |
コード長 | 490 bytes |
コンパイル時間 | 139 ms |
コンパイル使用メモリ | 12,672 KB |
実行使用メモリ | 20,940 KB |
最終ジャッジ日時 | 2024-10-10 20:31:38 |
合計ジャッジ時間 | 6,750 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | -- * 2 |
other | AC * 17 TLE * 1 -- * 29 |
ソースコード
p,r=map(int,input().split()) f=lambda a:pow(a,(p-1)//2,p)!=p-1 def h(a): if a%p==0:return 0 b=2 while f(b*b-a):b+=1 h=lambda u,v:(u[0]*v[0]+u[1]*v[1]*(b*b-a),u[0]*v[1]+u[1]*v[0]) e,r,v=(p+1)//2,(1,0),(b,1) while e: if e&1:r=h(r,v) v,e=h(v,v),e//2 return r[0] for _ in range(int(input())): a,b,c=map(int,input().split()) d=b*b-4*a*c a=pow(2*a,p-2,p) D=h(d) if f(d):print(*sorted(set(((D-b)*a%p,(-b-D)*a%p)))) else:print(-1)