しずくぶろぐ

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

緑色になったので記事を書きます #雫ぷよ


ついに緑色になりました。嬉しいです。
茶色になってからどういうことをしたかまとめます。

Fortran(自分が使っている言語)で解かれている問題を解く。

もうすでにFortranで解かれている問題だと、解き終わった後に自分の解答と見比べることができてより綺麗なコードがかけるようになったりならなかったりします。
嬉しいですね.

AtCoder ScoresにFortran上位20人くらいを対戦相手にして詳細設定で言語をFortranにすると解かれた問題が出てきます。

よく使うコードをメモ

よく使うコードをメモして必要なときにパッと取り出せるようにしました。自分が何を学んだのかも結構わかりますね。

f:id:kapt0nH:20190609235350p:plain
こんな感じ
今までmoduleという概念を知らなかったのですがmoduleとしてメモしておくのもありかなと思っています。(関数名ごちゃごちゃになりそう)

module UnionFind

implicit none
integer,allocatable,dimension(:)::par
!parentより

contains

recursive function root(x) result(res)
integer :: x,res
if(par(x) /= x) par(x) = root(par(x))
res = par(x)
end function

subroutine unite(x,y)
integer :: x,y
x = root(x)
y = root(y)
if(x /= y) par(x) = y
end subroutine

end module UnionFind

↑最近知ったUnion-Find

あとなんだろ、DPまとめコンテストとかを解いてDPの気持ちになったりならなかったり、TLに流れてきた問題を解いたり解かなかったりしました。

最近Fortranの弱点がわかりつつあるような気がする、、、