結果
問題 |
No.321 (P,Q)-サンタと街の子供たち
|
ユーザー |
|
提出日時 | 2015-12-14 04:33:50 |
言語 | Ruby (3.4.1) |
結果 |
AC
|
実行時間 | 276 ms / 2,000 ms |
コード長 | 496 bytes |
コンパイル時間 | 99 ms |
コンパイル使用メモリ | 7,552 KB |
実行使用メモリ | 12,544 KB |
最終ジャッジ日時 | 2024-07-06 21:58:18 |
合計ジャッジ時間 | 7,858 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 4 |
other | AC * 41 |
コンパイルメッセージ
Syntax OK
ソースコード
#!/usr/bin/ruby #coding:utf-8 def egcd(x,y) return [x,1,0] if y==0 g,a,b=egcd(y,x%y) [g,b,a-x/y*b] end a,b=gets.split.map(&:to_i).sort if b==0 gets;p $<.count{|e| x,y=e.split.map(&:to_i) x==0&&y==0 } else g,z1,z2=egcd(a,b) a/=g b/=g gets;p $<.count{|e| x,y=e.split.map(&:to_i) next if x%g!=0 || y%g!=0 x/=g y/=g #((QQ-PP)n+z2XP+z1XQ-Y)%gcd(2P,2Q)==0 g0=(2*a).gcd(2*b) z=b*b-a*a w=z2*x*a+z1*x*b-y #zn+w%g0==0 #zn%g0==-w%g0 #p [-w,z,g0] -w%z.gcd(g0)==0 } end