【競プロ】青色までに戦う6つの敵

AtCoderで青色になりました。色変記事です。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/234098/791497d8-29cc-ef10-3f09-c01e114605d3.png)

本記事では、水色から青色になるまでにしたことについて書きます。
灰色から水色になるまでにしたことは水色の時の色変記事を読んでいただけると幸いです。

https://qiita.com/BinomialSheep/items/bdced19c2dc4e6b481ec


# vs 典型パターン

同レート帯のほとんどが当たり前のように解けるタイプの問題は、自分も当たり前のように解きたいですよね。
アルゴリズムやデータ構造はもちろん、数学問題やアドホックでも、ABCの一色下を「典型」として処理できるようにならないと、なかなかレートが上がりません。苦手分野だからと緑diffを落としてしまうとパフォが悲惨なことになってしまいます。

### 精進方法
2023年4月現在、とりあえず『**鉄則本**』（競技プログラミングの鉄則 ~アルゴリズム力と思考力を高める77の技術~）を埋めておけば間違いないでしょう。一部高度な内容を含みますが、ABCで出る範囲の内容なのでやって損はないはずです。
演習が足りないと思えば精選100中級と併用するのもいいと思います。

https://qiita.com/e869120/items/eb50fdaece12be418faa#%E4%B8%AD%E7%B4%9A%E7%B7%A8

### 数学典型
さらに「早解きが得意で水色到達したけど、同レート帯で数学が特別苦手！」というタイプの学び直しや（中学生の）先取り学習としては
・『問題解決のための「アルゴリズム×数学」が基礎からしっかり身につく本』
・[けんちょんさんの記事と、アルゴ式](https://qiita.com/drken/items/a14e9af0ca2d857dad23)
・マスターオブ整数/マスターオブ場合の数
などがよく推奨されています。
ただ、自分が高校生の時の感覚だと『マスター・オブ～』は理系受験生の中でもかなり優秀層向けの参考書なので、いきなり取り組むには難しいのではと思います。数ⅠA の教科書レベルに取り組むのが急がば回れかもしれません。
あるフォロワーの水コーダーは、最近OMC(Online Math Contest)のA問題をいろいろ解いているみたいで、これも効果がありそうです。

# vs 発想パターン

ABC-Eあたりでは、「典型問題の知識は前提で、それを上手く組み合わせたり捻りを加えると解ける」問題がよく出てきます。
例えばUnion-Findを単に使うだけの問題は茶diffですが、
「辺削除クエリをまともに扱うには難しいデータ構造が必要だが、クエリを逆順に見るとUnion-Findで扱える」
「各頂点の状態を自力で管理しようとすると実装が重いが、超頂点を導入するとスムーズに解ける」
など数捻り加わると水diffになる感じです。
初見でもそこそこ時間を掛けて手と頭を動かすと解けたり解けなかったりしますが、それだとあまり高いパフォは出ません。これが「あ、この発想見たことあるな」と、頭の引き出しから取り出せるようになると、ABC5完が安定してくるイメージです。
また、高い応用力がある人ならナップサックDPだけ知っていれば期待値DPや木DPも同じものに見えるかもしれませんが、我々凡人は「期待値DP」「木DP」という発想パターンがあると認識した方が理解しやすいでしょう。

### 精進方法
そもそも適切な難度（同色～+0.5色くらい）の問題をあまり解いていない人は、解きましょう。
その上で、1問から得られる学習量をどれだけ増やせるか、次から「解いたことある問題」として認識できる範囲をどれだけ大きくできるかが重要です。
抽象化能力には個人差があるかもしれませんが、解説を眺めるだけでなく数式まで追ったり、別解でも解いてみることで、1問からの学びを増やすことができます。

https://twitter.com/BinomialSheep/status/1640204425930366982?s=20

「つまり努力強度を意識的に高めればよく、努力強度のレベルが言語化されていたら嬉しいのでは？」という仮説です。このツイートは思いつきなので割と抜け漏れがあり、例えば解きなおしも有効だと思います。
コンテスト後のTwitterは着想や別解が書かれていることが多く、そのTLを追うためにもコンテストのリアルタイム参加や翌日バチャが有効です。[まよコン](https://qiita.com/mayocorn/items/4edff486428240864808)などもオススメです。
類題は[AtCoder Tags](https://atcoder-tags.herokuapp.com/)などを活用することもできますし、テーマに特化したバチャが立っていることもあります。自分は[期待値DPの夏休みの宿題](https://kenkoooo.com/atcoder/#/contest/show/3e870f02-b970-48d6-976d-3d1cfbb776d4)に取り組んでから期待値DPは得意寄りのジャンルになりました。また、少し古い問題であれば、問題名をググると様々なブログが類題をまとめてくれていたりします。AtCoderだけでなくAOJやyukicoderの類題が豊富に揃っていることもあり、ありがたいです。

# vs 速解き


ABCでは、同レート帯では解ける問題数にはあまり差がつかず、速解き力が温まりと冷えを分ける回がしばしばあります。
水色コーダーにとって、Dまでは緑diff以下なので解けて、G以上は黄diff以上なので解けないとすると、適正diffはE, Fの2問です。しかしこの2問のレートも1100～2100と幅広いため、ちょうど自分がギリギリ解けるか解けないかのdiffの問題になるというのは5回参加して1問くらいです。自分が4完しかできない時は周りも4完だし、自分が6完できる回は周りも6完してます。
その1問を解ける確率を僅かに上げるのは重要ですが、レートへの寄与でいえばDまでの速さを毎回少しずつ縮めた方が大きいです。
特に、現在速解きタイプじゃない場合は、これだけでレート200以上上がり得ます。

https://twitter.com/kiri8128/status/1645064789482418177

コンテスト後にkiri8128さんが出しているグラフを見ると、自分の速解きの伸びしろが分かります。


## A, Bの速解き

水色erともなると、A, B問題の解法は一瞬で思い浮かび、それを爆速でコーディングしてACしているはずです。
ところが、順位表を見ると、同じ言語でも最上位勢はBまでの速度が1分以上早かったりします。謎ですね。
自分も早解きタイプではないですが、とりあえず平均30秒くらいは割と縮まります。以下、C++前提で書きます。

### マクロやスニペットを整備する
repマクロやallマクロは導入済みかと思いますが、可変引数マクロを覚えると入出力に革命が起きます。

https://trap.jp/post/1224/

traPブログのtatyamさんの記事が分かりやすいです。感謝。僕は更にtatyamさんのマクロを窃盗することで恩を仇で返しているのですが、YesとNoを出力するマクロもとても便利です。ありがとうございます。（tatyamさんの欲しいものリストからなにか贈った方がいい気がしてきた）

スニペットは自分の場合あまり整備できていませんが、グラフや木の入力は面倒すぎるので使っています。[snippet generator](https://snippet-generator.app/)が便利です。

### 標準ライブラリを知る

標準ライブラリを知っていると簡潔に書けるA問題は多いです。

https://cpprefjp.github.io/reference/algorithm.html

https://cpprefjp.github.io/reference/locale.html


### 例
例えば以下の問題を雑に解いてみます。

https://atcoder.jp/contests/abc291/tasks/abc291_a

```C++ before.cpp
#include <bits/stdc++.h>
using namespace std;
int main() {
  string S;
  cin >> S;
  for (int i = 0; i < S.size(); i++) {
    if ('A' <= S[i] && S[i] <= 'Z') {
      cout << i + 1 << endl;
      break;
    }
  }
  return 0;
}
```
とりあえず大文字は1個しかないのでbreak不要ですね。
「1行でも中括弧を省略してはいけない」というPJ規約はないので省略しましょう。
競プロではrepマクロや入出力マクロを便利に使っても怒られません。
localeヘッダのisupper関数を知っていますか？私は知っています。
```C++ after.cpp
// テンプレ省略
int main() {
  STR(S);
  rep(i, S.size()) if (isupper(S[i])) out(i + 1);
  return 0;
}
```
これだけでも結構簡潔になっていますね。速さだけでなくバグりにくさにも繋がっています。
自分が使っている言語でコンテスト中ACが速かった人のコードを読んだり、解説放送をAやBからちゃんと観ると、意外と発見があるのでオススメです。

・テストを拡張機能に頼る
すべてのサンプルを手動で試すのは面倒なので、拡張機能に任せましょう。
自分は[AtCoder Easy Test v2](https://greasyfork.org/ja/scripts/433152-atcoder-easy-test-v2)を使用しています（※ただし最近はこのスクリプトは開始後5分くらい不調で、A, Bでは活用できていません）

よりtrivialな高速化としては
・コンテスト前にファイルを作成して定位置までスクロールしておく
・コンテスト前に問題のURLを予め開いておく
・問題文を（誤読しない程度に）雑に読む
などもあります。

https://atcoder.jp/contests/abc289/tasks/abc289_b

例えばこの問題は真面目に問題を読み込むと結構時間が掛かりますが、開いた瞬間に「訓読してください」という内容なことは分かるので、制約に目を通しながら入出力とサンプルを見れば解けます。

他にも
・コマンドライン上で提出までできるよう環境を整備する
・タイピングをひたすら早くする
・Aだけは問題ページ上でPythonなどで直接書く
　- さらに、dc, Sed, vimなどにも熟達してA問題を10秒で解く
なども考えられますが、そこを突き詰めるよりも、C, Dを速く解けるようにする方が簡単だと思います。

あとは、自分が解いているところを録画してどこに時間を使っているか検証するのもいいらしいです。僕はやっていません。

## C, Dの速解き
こちらが本題です。
A, Bで縮むのはせいぜい数分ですが、C, Dはそれがギリギリ解けた頃から数十分縮みます。
ここを素早く解いて詰まらず実装してWAを出さないようになりましょう。

で、その方法ですが……えーっと……**問題たくさん解くのみ**だと思います。日々バチャに出たりウォーミングアップで-1色を埋めたりして、**パターンマッチで処理できる**-1,-2色を増やしましょう。
速解き対策として有名なバチャは「[もすーんバチャ](https://twitter.com/Mosoon_V)」「ABCなにか」などがあります。

「たくさん解くのみ」というのは才能とか効率とか気にせず**やっていれば伸びるという希望**でもあります。
特に**タイプチェッカー**がプラスの人は、精進効率とか気にせずとにかく手を動かして下色を埋めてみてもいいんじゃないでしょうか？

https://atcoder-type-checker.herokuapp.com/

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/234098/690d7590-702b-0392-3b89-b643bdb4c5f7.png)
**BinomialSheep さんのスコアは 6.96 です**。多く解くタイプです。 (計算に使用したコンテスト数: 72) 
いやかなりプラスやないかい！！！！！！

### C問題で沼らないテク（遅解き回避）
水色erがC問題を見て「は？解けなくない？」「えー、この方針で解けそうだけど重すぎるなぁ」と思った時は、たいてい問題を誤読しています。読み直しましょう。
それでも分からなければ先にD問題を解くのも手です。改めてC問題を見るとあっさり解けたりするものです。
また、サンプルは合うけど未証明の貪欲を投げたい時や、場合分けの見落としの予感がある時は、いったん寝かせて先にD問題を解くテクがあります。D問題を解いてから順位表を見て、C問題のペナ率が低かったら祈りながらC問題を提出できます（せこい）。高かったら小さいケースを全テストするか解法の正当性を考えた方が良さそうです。
なお、D問題が解けない時に同様に先にE問題に手を付けて、E問題が解けなかったら最悪です。+1問が確実に解ける難度帯で使いましょう。

# vs ARC (option) 
ABCで適正diffの問題が出るとは限らない以上、ARC（およびAGC）に出て試行回数を増やすのは重要です。
でもARCに苦手意識とか、期待値が悪いイメージを持っている人も多いですよね。
僕も緑の時に0完したので、気持ちはわかります。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/234098/77496ad7-aec2-e008-d35c-e0ce29516135.png)

ARCに対してどういう態度を取るか、というのは競プロをやる上で1つの分岐点です。

### ARCに出ない
これもアリな選択です。「典型アルゴリズムの習得のみを目的としている」「就活でレートを使えればそれでいい」といった動機でAtCoderをやっているのであれば、興味はないでしょう。「レートが減るのがどうしてもストレスなのでratedで出たくない」という人が無理に出るものでもないと思います。
一方で、「趣味として競技プログラミングをやっている」「コンピュータを使った問題解決力を底上げしたい」といった動機でAtCoderをやっているのであれば、ARCは人生の役に立ちます。

ところで「自分は数学力がないのでARCに出ない」というツイートを見かけることもありますが、ARCの序盤で数学的知識が要求されることはほぼありません。たしかに、高校生時点の数学力と現時点の論理的思考力にはそれなりに強い相関があるかもしれませんが、入青記事を読むような競プロerならスタートラインに立てていないということはないはずです。「受験数学を通して自然に身につく思考態度」の有無にギャップを感じているのであれば、『数学ガール』とか読むといいかもしれません。

### ARCの負けは気にせずABCで勝ちまくる
ABCの方が開催頻度が高く、レート計算式上も失敗より成功が評価されるので、ARCで負けてもABCで勝っていればレートは伸びていきます。ABCで一定の割合でカンストできる場合、この戦略で黄色に到達するようです。

https://www.terry-u16.net/entry/atcoder-yellow

常人には真似しがたいですね……。
これほどレートを大きく伸ばすのは難しくても、ARCで負けてもABCで順当なパフォを取っていれば適正レートから極端に下がることはないので、「ARCは死に覚えのためにしばらくはパフォを気にせずに出るぞ」と一時的に割り切るのはアリな態度だと思います。

### ARCで勝つ

これが1番いいですよね。それはそう。
精進方法としては発想パターンと似ていて、「問題を解いて、死に覚えるしかない」です。書籍などの学習の高速道路が整備されていないので。特に、コンテストに出た上でコンテスト後のTwitterを見て、いろいろな人の解法に至った思考を知るのが、ABC以上に効果的だと思います。
ABCに目が慣れているとARCの問題は「アドホックなパズル」に見えるかもしれませんが、ARCの問題を解いていれば「ARCっぽい問題」だと認識できるようになります。


言語化すると、ARC-Bあたりまでは
「脳内で閃きを待つのではなく、紙とペンや、愚直解コードで実験をする」
「何となく良さそうでも正当性が示せないなら、反例がないかABCより丁寧に考える」
「小さいケース全列挙やランダムテストで、WAになるケースを見つける」
など、天才的数学力というよりむしろ努力型の問題解決能力が必要だなというイメージです。
基本的にARC-Bがそれなりの速さで解ければ青パフォが出ます。
ARC-CではGrundy数のような、ABC-Fまでで要求されない知識が必要な問題もあります。ARC-D以降は知りません。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/234098/e97d42da-9451-5355-3860-3401ea906eb4.png)

ARCだけ抜き出したパフォ推移です。個人差はあるにしても、最初は低いパフォを出すこともあるし、参加を続けていればある程度ABCと同じくらいの速度で上がっていくんじゃないかと思います。

ARCの適正diffをいきなり解くのは大変で、最初は灰茶diffの問題を解いても学びがあると思います。diffが低くてもちゃんと実験しないと分からない問題や、工夫しないと実装が面倒な文字列操作が含まれていたりするので。
自分はPCに向かって精進する時間がほとんど取れなかった時期に、[ARCの緑diff～青diffの問題を集めたtraining](https://kenkoooo.com/atcoder/#/contest/show/51cb24b2-1075-42d3-8ccc-78a68fcbf6da)を立てて頭に問題をストックしておいて、寝る前や徒歩移動中に考えるようにしていました。効果があったのかは分かりません。

# vs 高度典型 (option)
ABC-F以降で、「高度だけど知っていれば割と素直に解ける問題」がdiff1800～diff2200くらいで出題されることがあります。これを高度典型と呼びます。
特にF問題が考察系でG問題が高度典型の場合、Fは解けなくてGが解ける6完をすると、点数傾斜の都合で高いパフォと脳内麻薬が出せます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/234098/0c75282e-b51c-307c-ae9e-76c07871f5e2.png)


精進の時も、適正diffの考察系の問題を頑張って考えるよりも、適正より高いレベルの高度典型を学んだ方が楽ですし知識欲も満たせるので、コスパの良いジャンルです。
一方で、考察力を付けずに高度典型で成功して黄色に近づいたとしてARCで勝てるのかとか、ABC対策を過学習することが自身の根本的なアルゴリズム設計能力に寄与するのかといった疑問もあります。精進時間がたっぷりあるなら全部やればいいですが、限られているなら適正diffの問題を解く比重を多めにして、高度典型はコンテストで出たら覚えるくらいの気構えの方が長期的な地力向上には役立つと思います。
（なお、青→黄では高度典型こそ適正diffなので頑張ります）

高度典型がまとまっているのは例えば以下でしょうか。
 -  [典型90](https://atcoder.jp/contests/typical90)の★6以上
 -  [上級精選50](https://qiita.com/e869120/items/acba3dd8649d913102)
 -  [ACLドキュメント](https://atcoder.github.io/ac-library/production/document_ja)でEまでで使ったことない関数の使い方
 -  PAST上級本
 -  PAST過去問の最後の方

まぁこれらに載っていない高度典型もよく出てくるんですが…………。これについてサーバルちゃんが言及していました。

https://twitter.com/kyopro_friends/status/1638124961285160960?s=20

# vs 精進時間
ラスボスです。
毎日バチャしてupsolveして復習していれば当然強くなれますが、そんな時間が取れないからみんな困っているんです。
**いかに可処分時間を増やせるか、そのうち競プロに充てる割合を増やせるか**は、多少の効率の良し悪しよりも重要です。
競プロに充てる割合は、価値観の問題なので知りません。一方で可処分時間は、頑張れば増やすことができる可能性があります。

誰にでも今すぐ役立つ簡単な方法はないですが、**意識的に時間の使い方や生産性を改善しようと試行錯誤していればだんだん上手くなります**。少しのことにも先達はあらまほしき事なりと兼好法師も言っていますし、まずは人のやり方を真似するのがいいでしょう。競プロをやっているような賢い学生は自己啓発本やビジネス本をバカにしがちですが、~~そして実際1行も学ぶところがないことも稀にありますが、~~ 普通に学びも多いです。世の中には時短テクとか振り返りフレームワークとかが溢れていて、~~大抵自分にピッタリ合うことはないので微妙なんですが、~~ いろいろ試して取捨選択するとだんだん「ぼくのかんがえたさいきょうのほうほう」が見えてきます。
ここで羊の考えた最強の方法をまとめるとそれだけで1万文字になりそうなので、スクラップブックにしているExcelファイルからいくつか引っ張ってきました。

### 記事
[年収1000万の発達障害者が「ADHDのタスク管理術」について語ってく](http://hattatu-matome.ldblog.jp/archives/50407478.html)
[キモは “行動の細分化” にあり！ 圧倒的に目標達成しやすくなる「逆算思考」が超おすすめ](https://studyhacker.net/yarinuku-nou)
タスクの分解と着手の基本です。
[怠惰な大学院生、フリーランスのためのポモドーロ・テクニック論](https://note.com/h_keisuke/n/nb650138e6902)
割と誰でも効果を実感しやすい、ポモドーロ・テクニックの記事です。
[タスクをどんどん遅延させてしまう人に、何故遅延させてしまうのかヒアリングした時の話](https://blog.tinect.jp/?p=39105)
自分という上司が自分という部下を管理すると捉えるとこういう記事も参考になります。
[「優れた計画」に含まれていなければならない4つのこと](https://blog.tinect.jp/?p=20954)
短いです。
[あなたが目標達成できない理由9個と目標達成方法7選](https://studyhacker.net/cannot-achieve-goal)
長いです。
[論文読みの日課について](https://joisino.hatenablog.com/entry/2023/04/10/170519)
競プロでも有名なjoisinoお姉ちゃんが最近書いた記事です。


### 書籍

**『なぜ、あなたの仕事は終わらないのか』**
ロケットスタート系の時間術の元ネタです。エンジニアの本なのでイメージしやすいと思います。

**『やめる時間術』**
1日の可視化と作業の引き算にフォーカスした本です。

**『Your Time』**
タイプ別に分かれているのと、メインとオプションに分かれているので、何を試せばいいか分かりやすいです。

**『鬼速PDCA』**
個人の目標達成文脈でのPDCAはこれが1番詳しいです。


# 入青時のデータ

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/234098/1c7df0e4-b894-d0e8-6ca2-13828f134061.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/234098/82c3fdb4-6467-d6cb-334f-a31073739ba2.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/234098/32c8980a-9d05-3aa8-2ee0-4ce418fad84f.png)

もっとがんばりましょう。

# Q&A
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/234098/c237e577-3386-e76e-fa2e-f0ec6aaec42e.png)

僕のイメージキャラクターです。イル＝フローラさんに描いてもらってます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/234098/1e200ef2-dd56-0363-2c68-6f916909cae8.png)

はい。
まず**息を吸うように茶diffが解ける**ことは常に役立ちます。
また、日常業務でもたまに**緑diffくらいの課題が振ってきて、これを秒で解決できる**ので役立ちます。
水diffが業務でそのまま降りてくることはあまりなくて、とはいえ性能解析のタスクが振られた時や最適化ソリューションをやっている部署の人と話した時などには重宝します。資料をチラッと見て「この制約なら動的計画法で高速に厳密解が求まって、例えば条件をこう変えると難しいです」と言えるので気持ちがいいです。

加えて、直接業務で設計しないとしても、背後で使われている高度な技術はアルゴリズムとデータ構造の宝庫です。例えばネットワークでは、ルーティングプロトコルごとにダイクストラ法と分散ベルマンフォード法が使い分けられていますし、明らかにネットワークは最大フローに関心がありますし、プリム法やクラスカル法はベル研のプリムさんとクラスカルさんが通信ネットワーク設計のために考案したアルゴリズムです。また、データベースでもBツリーやデッドロックの待ちグラフによる検出や実行計画のオプティマイザなど、アルゴリズムが重要な要素技術が多数あります。検索エンジンなんて暖色レベルのアルゴリズムの結晶ですし、機械学習でも計算量改善が研究の大きな前進に繋がることがしばしばあります。**これらを理解し使いこなす上で、競プロで培ったアルゴリズム力は非常に役立ちます。**

また、業務外で**解決したいちょっとした問題が寒色diff以上なことはよくあります**。自分が競プロ始める前は解ける問題として認識していなかったから無意識で諦めていただけで、日々の中でふと沸いたけどググっても出てこない疑問のうちいくつかは、青コーダーになってみると30分PCに向かえば解決できます。**むしろ青でも全然足りないです**。銅diffのEx問題とか読むと「あー、こんなストーリーの問題が解きたくなることあるよね。こんな制約で解けるんだ」と思うことがあるので。これはアルゴ力だけでなく、ヒューリスティック力でも数理統計力でもゲーム理論力でもそうで、**身について初めて認識できる「解ける問題」が世界にはたくさん転がっています。**

https://twitter.com/KOBA789/status/1644345066432102401?s=20

https://twitter.com/KOBA789/status/1644347141014564869?s=20


![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/234098/116ed49d-9b69-e134-80c1-4da23104a027.png)
意外と毛が硬いので、もふもふよりもぐもぐした方がいいですよ。肉は柔らかいです。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/234098/393dcf4e-ef06-4c92-1afe-6397e9ad1c93.png)
1年目の4月は割とそんな感じかなと！生活リズムも日中やることも3月までとはガラッと変わりますからね。
生活リズムはそのうち慣れますし、さらに意識的に少しずつ可処分時間を増やしていけば、7月くらいにはある程度余裕ができて、自然と仕事以外の何かをしたくなると思います。
それまでは無理に両立する必要はなくて、もし1日何もせずに終わってしまうという焦燥感があるのであれば、「仕事の中でその日のプチ目標を決める」「今日仕事で学んだことを日記にする」など仕事で小さな達成感を得るようにすると精神の健康が保てます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/234098/81cbadb8-0a4e-46ed-9073-dc5d76c003a6.png)
任せてください。
### 『**君と紡ぐソネット**』
競プロerにオススメと言えばやはりこれ。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/234098/14cfc352-d1c6-19a6-91f4-6d5afedd9eed.png)

高校数学を題材にした勉強系ラブコメで、「これはもはやこの世で一番キュンとくる"参考書"だ」というヨビノリたくみさんの推薦文が言い得て妙です。神社で出会った女子中学生に取り憑かれ(?)、数学を教わりながら学年の才媛とラブコメしていきます。
作中の「数学ができるとモテる」というセンテンスに夢があります。
勉強系ラノベとしては、ヒロインと夜中に一緒に勉強して東大を目指す『**僕たち、私たちは、『本気の勉強』がしたい。**』や、数学オリンピックを題材とした『**青の数学**』も良いです。頭脳競技に熱く挑むという意味では『**りゅうおうのおしごと**』も定番ですね。


### 『**ぼくたちのリメイク**』
続いて、先月完結したクリエイターものラノベを挙げておきます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/234098/945817fd-7b99-bd24-85f3-650f121635ea.png)
競プロerの中には「何か作りたいけど何かを作りたいわけじゃない」というユーザーもおり、クリエイターものラノベが刺さるかもしれません。一般大卒の零細ゲームディレクターの主人公が学生時代に戻り、芸大に入って人生をやり直すラノベです。主人公自身は天才クリエイターではないのですが、社会人ゲームディレクターとしてマネジメントやディレクションをしてきた経験でチーム制作に大きく貢献していて、面白いです。
また、最近の面白いクリエイターものラノベとしては『**Vのガワの裏ガワ**』もあります。 前半は「主人公が神絵師で、同じ学校にモデラーと魂と人気Vがいて、VTuberを創り上げてバズらせる」というクリエイターラノベとして純粋に爽快で、ヒロインの裏ガワに迫っていく後半はVTuber小説して完成度が高いです。[赤コーダーのこたつがめさんも絶賛](https://twitter.com/kotatsugame_t/status/1630379486909964288)していることから、競プロに役立つことでしょう。

### 『**弱キャラ友崎くん**』
競プロというより競プロer高校生の人生に役立つラノベとして紹介したいです。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/234098/01a164f7-918f-c506-7d95-8ef777eaf82f.png)

日本1のゲーマーが、リア充の指南を受けながら人生に向き合うというラノベです。
この作品は、陽キャ肯定ラブコメという新ジャンルを切り拓いたところもスゴいのですが、何より読者のリアルに与えた好影響の大きさがスゴいです。作中の目標達成メソッドを真似してタグで共有するというムーブメントが中高生読者の間で起こり、部活・恋愛・受験と多岐に渡る挑戦と改善と成功の青春が日々SNSで共有されていました。
メソッド自体は特別なものではないですが、ラノベの中で具体的かつスモールステップで示されていて、「自分も変われるんじゃないか」と思わせてくれるような作品です。

このようなリア充サイドを描いたラノベは、現代ライトノベルの頂点である『**千歳くんはラムネ瓶のなか**』を筆頭に、ラノベ界の新定番となっています。たとえば『**灰原くんの強くて青春ニューゲーム**』も面白いです。


### 『**恋人以上のことを、彼女じゃない君と。**』
まだまだあります。競プロerの多くは学生なので、解像度の高い社会人ラノベは役に立つでしょう。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/234098/74ae7ab5-6817-e5d0-e2b8-84a95b24462f.png)
**社会人かつ元恋人**設定という、従来ほとんど無かったタイプのラノベです。
東京の20代同士として気軽で楽な関係の大人のモラトリアムを楽しみながらも、身持ちを固めることも考え始める年頃。**学生の頃よりむしろ期間限定のモラトリアム**を満喫しながらも焦燥感があり、恋人じゃないから踏み込めなかったり、あるいは恋人以上に踏み込めたり、そこに共感や切なさがあります。


 ### 『**ママ友と育てるラブコメ**』
また、競プロerの多くは子育てを経験していないので、子育てラノベが役立つでしょう。
 ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/234098/afcba7f6-74b0-0175-c19d-e2195a660e64.png)
幼い妹の保護者をしている主人公と、幼い弟の保護者をしているクラスメートヒロインのラブコメです。
表紙を見てください。教室では完璧クール美人なヒロインが、**エプロンを付けるだけでこの母性**。
コンセプトだけで圧倒的個性が溢れていると言わざるを得ません。家庭感や若いパパママ感溢れる描写も、ハートフルなエピソードもやり放題。
**幼稚園の遠足を親側として参加する**のもラノベとして新鮮なストーリーだし、友だちグループとのショッピングモールも**幼児2人が加わるだけで非凡なイベント**になります。
日常モノとして若い親あるあるをやってくれるだけで楽しいし、結婚適齢期のラノベ読者層に刺さってヨシ。親代わりである自分たちや成長著しい幼い妹たちが前に進んでいく物語であってもヨシ。もうこのコンセプトが確立されている時点で勝ち確です。


### 『**カノジョの妹とキスをした**』
さらに、競プロerの多くは義妹と二人暮らしをしていないため、役立つでしょう。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/234098/50252959-83e7-0636-7cb3-3f251dafaf87.png)
『落第騎士の英雄譚』等の海空りく先生による、不純愛ラブコメの金字塔です。4完完結。
舞台装置、キャラクター、ストーリー全て最高です。
「**彼女の生き別れの妹が突然自分の義妹になり内緒の二人暮らし**」から始まる純愛三角関係。
主人公はヘタレながらも彼女好きで流されず、カノジョの妹もイタズラ好きながら良い子でお姉ちゃんっ子だから本気で困らせる気はなくじゃれてるだけ、という関係性から始まり、しっかりドロドロになっていく、関係熟成の妙に痺れます。
不純愛ラブコメも近年のラノベのトレンドで、なかでも『**友達の後ろで君とこっそり手を繋ぐ。誰にも言えない恋をする。**』『**わたし、二番目の彼女でいいから**』などが面白いです。



# おわりに

いかがでしたか？
今回は「青色までに読みたい6つのラノベ」を紹介しました。
参考になれば幸いです！