結果

問題 No.607 開通777年記念
ユーザー TANIGUCHI Kousuke
提出日時 2020-01-28 18:25:47
言語 Ruby
(3.4.1)
結果
AC  
実行時間 1,674 ms / 2,000 ms
コード長 492 bytes
コンパイル時間 386 ms
コンパイル使用メモリ 7,168 KB
実行使用メモリ 21,376 KB
最終ジャッジ日時 2024-09-15 16:20:15
合計ジャッジ時間 5,850 ms
ジャッジサーバーID
(参考情報)
judge2 / judge6
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 3
other AC * 10
権限があれば一括ダウンロードができます
コンパイルメッセージ
Syntax OK

ソースコード

diff #

N, M = gets.split.map(&:to_i)
T = Array.new(M + 1){Array.new(N + 1, 0) }
(1 .. M).each do |i|
  d = gets.split.map(&:to_i)
  (1 .. N).each do |j|
    T[i][j] = T[i - 1][j] + d[j - 1]
  end
end

found = (1 .. M).find do |i|
  (1 .. N).each do |j|
    T[i][j] += T[i][j - 1]
  end
  (0 .. N).inject(0) do |r,l|
    r = (r .. N).find do |j|
      T[i][j] - T[i][l] >= 777
    end
    break false if r.nil?
    break true if T[i][r] - T[i][l] == 777
    next r
  end
end
puts found ? :YES : :NO

0