ruby 競技プログラミング 使いたいスキル


目次
1、nilガード
2、bsearch(二分探索)
3、最大公約数(gcd)・最小公倍数(lcm)


nilガード


変数がnilの場合、論理演算子を使うことで変数に値を代入する。

puts num ||=6


bsearch(二分探索)


条件にあう配列の要素の中で一番近い要素を抽出するメソッドです。

puts (0..4).bsearch{|p| p > 2} 
結果=> 3



最大公約数(gcd)・最小公倍数(lcm)


puts 2.gcd(12) #最大公約数をだす
結果=> 2
puts 3.lcm(6) #最小公倍数
結果=> 6

puts [2,4,6].inject(:gcd) #配列[2,4,6]の最大公約数をだす
結果=> 2
puts (1..10).inject(:lcm) #1~10の最小公倍数をだす
結果=> 2520