D: ダルマ落とし
問題
長さnの数列aが与えられる。次の操作を好きなだけ繰り返す。
- 数列の任意の隣り合う2数を一つ選び、その差の絶対値が1以下ならばその2数を数列から取り除き、数列は詰めて長さが2短くする
最大で幾つ取り除くことができるか。
D: ダルマ落とし
長さnの数列aが与えられる。次の操作を好きなだけ繰り返す。
最大で幾つ取り除くことができるか。
ACM-ICPC World FInals 2016 in Phuket, solutions
1年前のWFを期にプログラミングコンテストの参加が激減した私。本戦参加はしていないが問題だけは確認しておく。
M: What Really Happened on Mars?
t個のタスクがある。各タスクは命令の列で、命令は3種類
各タスクiは開始の時刻t_iと優先度p_iを持ち、時刻になると先頭の命令から順に実行可能になる。
実行中のタスクから最も優先度の高いタスクを選んでそれを実行することに成る。
L: Swap Space
n個のHDDがある。
それぞれは現在 容量a_iで、一つづつ取り替えて容量b_iにしたい。
HDDは全てフルに容量が埋まっており、取り替えるときはデータをn個の中の他のHDD、もしくは追加のHDDに移して、空になってからb_iになる。複数に分けて移しても良い。
最終的にデータを元のHDDに入れる必要はなく、追加のHDDに残しても良い。
追加のHDDは最小でいくらの容量が必要か。