結果

問題 No.1373 Directed Operations
ユーザー magurofly
提出日時 2021-02-05 21:42:54
言語 Ruby
(3.4.1)
結果
AC  
実行時間 714 ms / 2,000 ms
コード長 279 bytes
コンパイル時間 239 ms
コンパイル使用メモリ 7,424 KB
実行使用メモリ 30,848 KB
最終ジャッジ日時 2024-07-02 11:56:12
合計ジャッジ時間 9,877 ms
ジャッジサーバーID
(参考情報)
judge4 / judge5
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 2
other AC * 19
権限があれば一括ダウンロードができます
コンパイルメッセージ
Syntax OK

ソースコード

diff #

N = gets.to_i
a = gets.split.map(&:to_i)

b = a.each_with_index.to_a.sort
c = []
dp = [false] * N
dp[0] = true
b.each_with_index do |(l, j), i|
    x = i + 1 - l
    c[j] = x + 1
    dp[i+1] = dp[x] if x >= 0
end

if dp.all?(true)
    puts "YES"
    puts c
else
    puts "NO"
end
0