Q = gets.to_i memo = Array.new(100010, 0) 1.upto(100010) do |x| memo[x] = Math.log(x) memo[x] += memo[x - 1] end Q.times do n, m, k = gets.split.map(&:to_i) if memo[n] < memo[n - k + 1] + memo[k] + (k - 1) * Math.log(m) puts 'Flush' else puts 'Straight' end end