AtCoderをやって18
問題
自分の回答(不正解)
これだと1回多くカウントされちゃいますね。
n, x = gets.split.map(&:to_i) a = gets.split.map(&:to_i) b = 0 cnt = 0 a.each do |i| if b <= x b += i cnt += 1 end end puts cnt
他の方回答
N,X = gets.chomp.split(" ").map(&:to_i) arr = gets.chomp.split(" ").map(&:to_i) sums = [0] arr.each do |num| sums << sums[-1] + num end ans = 0 sums.each do |num| ans += 1 if num <= X end puts ans
下のやつは最初はcnt1つ少なくならない?と思ったけど、cnt = 1に設定してればいい訳ですね。自分頭硬いなー
n,x = gets.split.map(&:to_i) ll = gets.split.map(&:to_i) sum = 0 cnt = 1 1.upto(n) do |i| sum += ll[i-1] if sum <= x cnt += 1 end end puts cnt