nを割り切る最大の平方数をなるべく速く見つけるにはどうすればよいでしょう?
以下は、[√n] × [√n]から大きい順に調べてみるコードです。
lang
1def f(n) 2 i = Math.sqrt(n).to_i 3 while n % (i * i) > 0 4 i -= 1 5 end 6 i * i 7end 8 9p f(108) 10p f(109)
回答3件
あなたの回答
tips
プレビュー
投稿2015/06/13 12:11
nを割り切る最大の平方数をなるべく速く見つけるにはどうすればよいでしょう?
以下は、[√n] × [√n]から大きい順に調べてみるコードです。
lang
1def f(n) 2 i = Math.sqrt(n).to_i 3 while n % (i * i) > 0 4 i -= 1 5 end 6 i * i 7end 8 9p f(108) 10p f(109)
回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。