結果

問題 No.316 もっと刺激的なFizzBuzzをください
ユーザー Leonardone
提出日時 2015-12-09 07:33:48
言語 Ruby
(3.4.1)
結果
WA  
(最新)
AC  
(最初)
実行時間 -
コード長 2,429 bytes
コンパイル時間 170 ms
コンパイル使用メモリ 7,296 KB
実行使用メモリ 12,288 KB
最終ジャッジ日時 2024-11-17 05:52:52
合計ジャッジ時間 4,752 ms
ジャッジサーバーID
(参考情報)
judge3 / judge1
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 4
other AC * 32 WA * 1
権限があれば一括ダウンロードができます
コンパイルメッセージ
Syntax OK

ソースコード

diff #
プレゼンテーションモードにする

#! ruby
# yukicoder My Practice
# author: Leonardone @ NEETSDKASU
def gi(); gets.to_i; end
def gis(); gets.chomp.split.map(&:to_i); end
=begin
1N
a n/a
b n/b
c n/c
a*b n/(a*b)
b*c n/(b*c)
c*a n/(c*a)
a*b*c n/(a*b*c)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
2 * * * * * * * * * * * * * *
3 * * * * * * * * * *
5 * * * * * *
6 @ @ @ @ @
10 @ @ @
15 @ @
30 #
30 42 60 70 84 90 120 126 140 210 280
a = 6 * * * * * * *
b = 10 * * * * * * * *
c = 14 * * * * * * *
ab= 60 @ @
bc= 140 @ @
ca 84 @
=end
n = gi
a, b, c = gis.sort
if a == 1
puts n
exit
end
if n < a
puts '0'
exit
end
a_cnt = n.div(a).floor
b_cnt = n.div(b).floor
c_cnt = n.div(c).floor
ab_cnt = n.div(a.lcm(b)).floor
bc_cnt = n.div(b.lcm(c)).floor
ca_cnt = n.div(c.lcm(a)).floor
abc_cnt = n.div(a.lcm(b.lcm(c))).floor
answer =
if b % a == 0 && c % a == 0
a_cnt
elsif c % b == 0 || c % a == 0
a_cnt + b_cnt - ab_cnt
elsif b % a == 0
a_cnt + c_cnt - bc_cnt
else
a_cnt + b_cnt + c_cnt - (ab_cnt + bc_cnt + ca_cnt) + abc_cnt
end
puts answer
=begin
$stdout = STDERR
p n
p [a, b, c, a * b, b * c, c * a, a * b * c]
p [a_cnt, b_cnt, c_cnt, ab_cnt, bc_cnt, ca_cnt, abc_cnt]
p a_cnt + b_cnt + c_cnt
=end
#
=begin
cnt = 0
1.upto(n) do |i|
cnt += 1 if i % a == 0 || i % b == 0 || i % c == 0
end
p cnt
=end
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
0