シコウノストレージ

自分自身の考えを整理するために書いています。

歪みをとると決めた日

最近自分も成長してきて、世の中のことが分かってきて理解したことがいくつかある。

その中の一つが確かな歪みが存在していているということだ。

 

トレードをしていたこともあるから、歪みが世の中に存在するという事実は知っていたが、身をもって実感したというか自分の頭の中で納得感をもって現れてきたのは最近のことだ。 

 

歪みというのは要は非合理的な意思決定、または合理的な判断によってゆがめられてしまった生態系のことだ。

つまり、秩序がない=通常で考えればありえないようなことである。

 

今思えば、学生時代は合理的なエコシステムが存在してたなぁと思う。

学校という世界が特殊というのはよく言われるが、性質上どうしても価値観が同じになりやすい。それはまぁ自然な状態ではないともいえるが秩序は保たれている。

スポーツができる男子がモテやすい、陽キャ女子がモテやすい、勉強ができる人が褒められやすい等、多く人が何となく「あー」となるような単純な価値観があった。もちろんこれは、成長していくにつれて変化していくものだがまぁ大人の世界に比べたら単純で分かりやすいと思う。

 

ただ、秩序が保たれていると歪みが存在しにくくそれはそれで残酷であるという見方もできる。正確に言えば歪みを本人でどうこうできる問題ではないということ。親ガチャ、環境ガチャ、生まれガチャ等。これは生まれつき決まっているし、自分でコントロールできる部分はどうしても限られる。

 

今も感じているがやはり大人の世界は、学生時代に比べて無秩序であるなと思う。みんな独自の価値観や考え方を持っていて、だからこそいろんなところに歪みが生じやすい。

 

個人的に表現するなら、ルールが変わってより感情が介入する余地が多くなっていると表現する。

だから学生時代からチェンジしたルールを認識できなければうまくいかないことも多く。おそらくそれを何となく認識できる人も多いのだろうが、多分自分は苦手なタイプだ。

ただ、何となく認識しているといっても解像度の違いはあって、解像度が高い人が天才と呼ばれるタイプの人なんだろうなと何となく思っている。

逆に考えて見つけたタイプの人は解像度の認識が高いが、ルールの把握が華麗ではないので秀才タイプと呼ばれるのだろう。知らんけど。

 

どちらでも良いがその境地にたどり着く必要がある。

なので自分は歪みをとっていこうと認識した。

歪みの定義、そしてルールの把握の具体的な話は次のブログにでも書こうと思う。

3月所感

競プロは相変わらず成果が出にくい時期だけども、着実に成果が出てきそうというのは感じているので方針として変えるつもりはあんまりない。

 

ただ、最近思うのはいかにプログラミングをしている時間を減らすかということで、バグ取りの時間は本質的(競プロ的)には成長してないので時間の無駄といえる。

 

いかにバグを起こさないかが第一で、そもそも書かなくても方針があっている問題が増えればよい。

ならば、中間言語でも日本語でもいいけど手順だけ書いて計算量だけ考えていればよい。

 

実装の部分は前述したようにいかに実装の時間を減らせるかを考えるので、スニペットにしたりライブラリにしたりそうやって仕組み的にバグを減らしたり、そもそもバグが出る構造を減らせられれば良いと考えている。

3月作戦変更

三月も2/3が過ぎた。

 

コンテストは後1回しかないし、おそらく今月の間に緑になることは不可能だろう。

 

先月の段階で方向性は間違ってないと思い、そのまま続けているが思うように伸びていない。

 

その原因はいくつかって、まず下のレベルが上昇したというのがある。緑diffくらいまでの難易度が体感上がっている。

 

八問体制になってからおそらくDの難易度は少し下がったように思われるがdiffで言うと一昔前だったら茶diffだったのが灰、緑が茶くらいに思える。

 

要はそのレベル帯の問題を解ける人数が増えているので、早く解くか解かないかでめっちゃレーティング変動するということ。特に崖があるとそうなりがち。

 

D問題は灰diffから緑(難しいと水色)くらいまでのことが多く、自分のレベルだと知識と習熟度にムラがあるから相性の良い問題を引けるかというガチャをしている気分になる。

 

もう一段上を安定的に目指そうとしたらE問題まで解けなくちゃダメということになる。

 

E問題は大体緑~水色に収まることが多いので、水色を解ける少なくても戦えるようになれば、今よりはもっと上で安定してくれるはず。

 

そう考えると、目標をレーティングに求めるよりもレーティングの安定のために難しい問題を多く解くということにシフトしたほうが良いと考えたので、後10日ほどしかないが少し目標を変更しようと思う。

 

後10日ほどしかないが、

「一日3問E問題を考えて30問今月末までにACする。」

考えてもわからない問題もOKなので解説を見た際には、問題をちゃんと理解し他の人のコードも確認することまでをセットで行う。

2月所感

2月所感

 

2月のコンテストは3回中2回D問題が解けて、簡単な問題ならば解けるという自信がついてきたし、すぐに実装を思いつかなくてもアルゴリズムは思いついたり、そこまで行けば調べて実装くらいはできるかなという感じはしてきた。

 

競プロ以外のプログラミングが忙しかったこともあり、思うように演習時間は増やせなかったが過去最高レートには戻せた。

 

後半は環境をそろえるということに注力していてエディタ整理やタブレット端末の導入など新しいことをすることでより触れる機会を増やせる工夫もしたので今月後半に期待したい。

 

個人的には3月おわるころには安定して緑ぱふぉは出せる状態に持っていきたい。

そのための環境は今整備途中だが、もうすぐ完成する。

 

方向性は間違ってないと思うので後はやるのみ。

あまり目立った月ではなかったが着実に進んでいる感覚はある。

3月こそは.....

1月所感

早くも1カ月がたった。

今年は飛躍の年にしたいと言って新年が始まったが、今のところ悪くはないかなという気がしている。

 

すごい良いとも言えないけれども、それはあと11か月の中のどこかで。

 

先日のabcでコンテスト中にD問題を解くことができたのは成長を感じられたし、一つ結果として現れた部分だと思う。

 

今年一度も緑パフォ以上をとれてないのは結果だけ見ればあまりよくはないがあまり気にはしていない。

 

最近のDは茶diffのことが多く早く解けなくてはいけない問題になってきているが、これからはD問題を解けば解くほど力がついてくるフェーズだと思う。

 

そのため、2月中は一問でも多く、一秒でも早く解けることを意識しながらとにかくがむしゃらに量をこなせば、来月の終わりには問題にならないだろうと思っている。

 

上記のように結果としてはいまいちだったものの、この一カ月は表面的なもの以外の部分で道が開けたと感じる部分が多かった。

 

一番大きいのが、DPを学習しているときに気づいたボトムアップトップダウンの考え方。

 

単純にDPの考え方の理解につながったのもそうだし、それ以外に勉強の方法論的な意味合いでボトムアップトップダウン意識することにつながった。

 

もともと自分はトップダウン的に位置関係を整理しつつ概念を把握してから細かい部分を知っていくという方法を重要視していて、ボトムアップ的にとりあえず演習するみたいなのがあまり好きではなかった。

 

しかし、両方組み合わせながら(意識しながら)バランスよく勉強していくのが一番良いことに気が付いた。

 

詳しくは別で書くけども、これは、今後の学習において大きな発見になったと思う。

 

そんなわけで、一月は悪くない出来と言えるが、本当の勝負は2月のがむしゃらにやる時期だと認識している。

来月の終わりには納得できる結果になっていればいいな。

今年の振り返りと来年へ

今年は正直に言えば、あまり成長感というものは感じられない年だった。

というもの競プロに力を注いだけれども、必要最低限の能力が欠如していて具体的に何をやればいいのかというのを模索しながら勉強していたというのが主な理由。

最近それをやっと気づいたというか、回数をこなすことでその判断ができるくらいにはなってきたので来年こそは飛躍していけたらと思っている。

 

ただ、目に見える成長感というものは感じられなかったけれども、土台作りという意味で一番大変な部分、畑を耕す段階としては悪くなかったとも思う。

競プロ自体はプログラミング能力のすべてをカバーしているわけではないが、去年の今と比べたら、実装力という面から見ればプログラミングのスキルも向上している。

 

やっと軌道に乗ってくるかなという感覚はある。

だからこそ、来年は勝負の年という感覚。

今年は種まきと畑の整備両方をやってしまったせいで少し迷走した感はあるものの、ようやく畑の整備が最低ラインに乗ってくる感覚はある。

今年耕した畑を有効活用できなければ、また畑を耕すということをやらなければならなくなる。

そうならないためにも、しっかりと軌道に乗せて一定の壁は超えたい。(目標は水色)

 

また、最近気づいたこととして畑の耕し方にもレベル感があるように思える。

種まきの段階から同じように育ててきても、畑の状態(環境)が違えば同じように育たないように、土台(基礎)をどれだけ解像度高く理解できているかという視点はとても重要と思った。

 

それに気づいたのは最近ではあるのでまだまだ改善できる部分はある。

ただ一度気づいてしまえば、水を上げている段階でもおそらく畑の耕し方が悪いのだろうと気づけるので、常に畑の整備というのはちゃんとしていきたいと思う。

 

畑の耕し方を例に出していたが、要は物事を見る目の解像度の問題のことである。

認知といってもいいだろうし(?)界隈では言い換えなんて言われたりもしているが、要は物事の本質を見極めたうえで、いろんな視点で見れるかだったりそこに装飾したりできるかということである。

 

いろんな視点で見れるかというのは、よく言われているので割愛するが、そこに装飾できるかというのも本当に重要だと思っている。

これが応用力につながってくるのだろうという認識はある。

装飾できるかというのは普遍的に使えるように抽象化したものを、具体にあてはめる際に最適化するということでもある。

これは、もちろん基礎をちゃんと理解していないといけないので一つ上のランク。

ただ、来年はここまで行きたいと思っている。

自分に合ったやり方は大事だが視野狭窄になってはならないという話

自分に合ったやり方を貫くというのは大事なことで万人にとってのベストアンサーなど存在しない。

つまり自分の正解が他人の正解ではないし、その逆もまた然り。

とそういう考えはとても大事だが、同時に視野狭窄にはなってないか振り返るというのもまたやらねばならない。

 

それは自分に合ったやり方を主体的に選ぶということででもある。

試した結果で選ばず、俺にはこのやり方があっていると消極的な選択をし続けてはならない。

 

これは、穴掘りで例えるが自分の手になじんだスコップで掘っていくというやり方があっていると思っていても実際は明らかにブルドーザーを使って掘ったほうが速い。

 

それを試して運転できないまたは習得コストを考えて、スコップを選択をするというのならばそれは主体的な選択だが、全く見向きもせず俺はこのやり方があっているという信念を持っていてもより良い結果にはつながらない。

 

自分に合ったやり方を見つけたからといってこれからも続く保証はどこにもないし、そもそももっとあっているやり方がある可能性だって全然ある。

いつでもそれを探すという主体的な姿勢が大事だが、意識しないと忘れていく部分でもあるので注意したい。