単調スタック
単調スタックは、要素を増加順または減少順に保ち、その順序を崩す要素が来たら取り出していくスタックです。取り出すたびに、その値にとっての次に大きい(小さい)要素がわかります。Daily Temperatures が代表的な例です。
4 章 35 問と、比較的短い問題集です。基本の単調スタックから Largest Rectangle in Histogram とその仲間へ進み、寄与法ですべての部分配列にわたる和を求め、最後は辞書順最小の答えを組み立てる問題で締めくくります。考え方は知っているのに、ヒストグラムの問題で手が止まる人に向いています。
35 問レーティング 1300–26454 章
書斎を開く
誰かと一緒にこの問題集を進めたいなら、ログインして書斎を開いてみてください。ヒロインが一問ずつ出題してくれます。
一、Monotonic Stack
§1.1 基礎
| 問題 | レーティング |
|---|---|
| 739. Daily Temperatures | 1700 |
| 1475. Final Prices with a Special Discount in a Shop | 1300 |
| 496. Next Greater Element I | 1400 |
| 503. Next Greater Element II | 1500 |
| 901. Online Stock Span | 1709 |
| 853. Car Fleet | 1600 |
§1.2 発展(任意)
二、長方形
三、寄与法
四、辞書順最小
トラック 1 の 3 番目の問題集です。このパターンに慣れているなら、学習契約を結ぶときに「以前に解いた」にしておけば、ルートはここを飛ばします。
レーティングは zerotrac さんによる LeetCode コンテストレーティングです。zerotrac のレーティングがない問題は「未評価」と表示されます。
書斎を開く