結果
問題 |
No.321 (P,Q)-サンタと街の子供たち
|
ユーザー |
|
提出日時 | 2015-12-14 05:48:05 |
言語 | Ruby (3.4.1) |
結果 |
AC
|
実行時間 | 251 ms / 2,000 ms |
コード長 | 632 bytes |
コンパイル時間 | 101 ms |
コンパイル使用メモリ | 7,424 KB |
実行使用メモリ | 12,672 KB |
最終ジャッジ日時 | 2024-07-06 21:58:56 |
合計ジャッジ時間 | 7,206 ms |
ジャッジサーバーID (参考情報) |
judge4 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 4 |
other | AC * 41 |
コンパイルメッセージ
Main.rb:19: warning: assigned but unused variable - g1 Main.rb:19: warning: assigned but unused variable - g2 Syntax OK
ソースコード
#!/usr/bin/ruby 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 gets if b==0 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 g0,g1,g2=egcd(2*a,2*b) p $<.count{|e| x,y=e.split.map(&:to_i) next if x%g!=0 || y%g!=0 x/=g y/=g z=b*b-a*a w=z2*x*a+z1*x*b-y if -w%z.gcd(g0)==0 =begin _,k1,k2=egcd(z,g0) n=w*k1%g0+g0*0 m=(z*n+w)/g0 f=0 _d=g1*m+2*b*f _b=g2*m-2*a*f _a=z1*x+b*n-_b _c=z2*x-a*n-_d p [_a,_b,_c,_d,(_a+_b)*a+(_c+_d)*b,(_c-_d)*a+(_a-_b)*b] =end true else false end } end