結果
| 問題 |
No.546 オンリー・ワン
|
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2017-07-22 23:51:09 |
| 言語 | Ruby (3.4.1) |
| 結果 |
WA
|
| 実行時間 | - |
| コード長 | 504 bytes |
| コンパイル時間 | 208 ms |
| コンパイル使用メモリ | 7,552 KB |
| 実行使用メモリ | 12,416 KB |
| 最終ジャッジ日時 | 2024-10-09 10:05:07 |
| 合計ジャッジ時間 | 1,843 ms |
|
ジャッジサーバーID (参考情報) |
judge4 / judge2 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 3 WA * 1 |
| other | AC * 6 WA * 1 |
コンパイルメッセージ
Syntax OK
ソースコード
def gcd(a, b)
if b > 0
gcd(b, a % b)
else
return a
end
end
def lcm(a, b)
a * b / gcd(a, b)
end
n, l, h = gets.chomp.split.map(&:to_i)
c = gets.chomp.split.map(&:to_i)
aunswer = 0
0.upto(n-1) do |i|
aunswer += ((h / c[i]) - (l - 1) / c[i])
end
2.upto(n) do |i|
c.combination(i) { |com|
lc = com.inject(1) { |a, b|
lcm(a, b)
}
tmp = (h / lc) - (l / lc)
if i % 2 == 0
aunswer += tmp * -i
else
aunswer += tmp * i
end
}
end
puts aunswer