しずくぶろぐ

競技ぷろぐらみんぐしたり、なんかしたりします

水色になりました(Fortranで) #雫ぷよ

ABC139で色が水色に変わりました。清涼感あっていいですね。

f:id:kapt0nH:20190902143835p:plain
わーい

水色になるまでにやったこと

557(Fortranでは556問)解いたらしいです。
f:id:kapt0nH:20190902144342p:plain

f:id:kapt0nH:20190902144437p:plain
textしか使えない問題をひとつ出してしまいました

A問題とかB問題のように簡単なものを多く解いているので人よりも精進量が多く見えるかもしれません。

f:id:kapt0nH:20190902144632p:plain

だんだん埋まってるの見るの楽しいですよね。

バーチャルコンテスト? みたいなのにはまだ参加していません。そろそろ参加してみよっかなぁ。

Fortranで水色になる為に必要だったと思われること

水色になる為に必要だと感じられたもののうち他のいわゆる今風の言語を使う人が躓かないだろうところを書きます。もう水色になるのに必要だったこととかは色々みんな書いてるので*1

機能

Fortranは(C++,Pythonに比べて)わかりやすい分、色々な機能がないので自分で作る必要があります。一番よく使うのはsortでしょうか。計算量のオーダーがO(NlogN)のsortは準備しておくべきです。流石にいちいち書いてると時間が足りないので。私はヒープソートを使っています。

他にない機能としてはqueueとかpriority queue とかもないのですが、これは準備してなくても水色にはなれると思います。私もつい最近ue1221さんのQiitaの記事*2見ながらほぇ〜って言いながらやったばっかりです。ほぇ〜。

入出力

入出力をきちんとできるようにしておくと解ける問題が増えます。あとでまとめます。水色の前の一回レートが下がっているところは入出力のせいで下がったと言っても過言ではない、、、

今後について

そろそろ他の言語も使うべきか悩んでいたんですが、最近やっとオブジェクト指向みたいなのの意味がほんのりわかってきた(ような気がする)し、typeが使えそうな問題が出てきたりしているのでもう少し続けてみよっかなーと思います。まだまだ、Fortranにできないこともはっきりしていないですしね。