AT_iroha2019_day1_e 放課後

Description

[problemUrl]: https://atcoder.jp/contests/iroha2019-day1/tasks/iroha2019_day1_e ※きたむーとはこの問題の作問のお手伝いをした人の名前である。また、きたむーの彼女はいろはちゃんではない。 きたむーは高校の競技プログラミング部に所属し、放課後も熱心にプログラミングに取り組んでいた。しかし最近、きたむーには彼女ができたようだ。 デートがしたい! デートがしたい! デートがしたい! デートに着実に蝕まれていくプログラミング学習の時間。このままではきたむーのレートが落ちてしまうことに危機感を覚えたあなたは、彼の放課後のスケジュールを管理してあげることにした。 あなたは以下の点に配慮して明日以降の $ N $ 日分のスケジュールを立てることにした。 6. きたむーそれぞれの日の放課後に「デート」「競プロ」のうちいずれか片方の行動をとる。 7. きたむーは $ A $ 日以上デートできないと、愛が足りずに動けなくなってしまうので、 $ A $ 日に一度は必ずデートする。 8. このカップルには明日から $ N $ 日以内に $ B $ 回の記念日があり、それぞれ $ D_1,D_2,\cdots,D_B $ 日後である。この日には必ずデートを行う。 $ D_i $ は互いに異なる。 なお、きたむーは今日デートしており、彼の高校に休日はないものとする。 あなたはきたむーが競プロに取り組む日数を最大化したい。

Input Format

入力は以下の形式で標準入力から与えられる。 > $ N $ $ A $ $ B $ $ D_1 $ $ D_2 $ $ \cdots $ $ D_B $

Output Format

きたむーにプログラミング学習をさせることができる日数の最大値を$ 1 $行で出力せよ。

Explanation/Hint

### 制約 - 入力される値はすべて整数である - $ 1\ \leq\ N\ \leq\ 10^{18} $ - $ 1\ \leq\ A\ \leq\ N $ - $ 0\ \leq\ B\ \leq\ min(N,2\ \times\ 10^5) $ - $ 1\ \leq\ D_i\ \leq\ N $ $ (1\ \leq\ i\ \leq\ B) $ - $ D_i\ \neq\ D_j $ $ (1\ \leq\ i,j\ \leq\ B $ かつ $ i\ \neq\ j) $ - 入力はすべて整数 ### Sample Explanation 1 明日から$ 10 $日間のスケジュールを考えるが、$ 4 $日以上競プロが連続してはならず、$ 4 $日後、$ 6 $日後の$ 2 $日の記念日がある。競プロを`P`、デートを`D`と表記するなら、例えば、`PPPDPDPPPD`とスケジュールを組むことで$ 7 $日競プロに取り組ませることができる。 ### Sample Explanation 2 寂しがりすぎ。 ### Sample Explanation 3 記念日多すぎ。