AtCoder 赤色になりました

AtCoderで赤色になりました。

統計情報

f:id:kotatsugame:20210719025155p:plain
レート遷移

f:id:kotatsugame:20210719025218p:plain
パフォーマンス

f:id:kotatsugame:20210719025317p:plain
解いた問題数

f:id:kotatsugame:20210719025334p:plain
Achievement

f:id:kotatsugame:20210719025535p:plain
AtCoder Pie Charts

f:id:kotatsugame:20210719025632p:plain
Difficulty Pies

f:id:kotatsugame:20210719025659p:plain
Category Pies

kotatsugameに質問コーナー

皆さんご協力ありがとうございます。以下のGoogleフォームはまだしばらく開けておく予定なので、これからもドシドシご投稿ください。

forms.gle

ん?今何でもするって

するとは言ってないんだよなあ……。

水洗った?

洗った

尊敬する競技プログラマは?

尊敬ですか……。昔、latte0119さん、beetさん、ei1333さんに対して抱いていた感情はおそらく尊敬だったと思います。またコードゴルフ関係では、testestestさん、kimiyukiさん、%20さんを尊敬していました。が、最近はあまりほかの競技プログラマのことを意識しなくなっているため、今尊敬する人と言われてもパッとは思い浮かびませんでした。

質問などなんでも

そうだね、質問などなんでも書いてくださいとあったからね

性欲と競プロ力の関係はあると思いますか

う~んどうでしょう。直接的には関係ないと思いますが、例えばパートナーが居て毎週ある程度まとまった時間をその人と過ごすために使うというような人は、そうでない人と比べて競プロ力の向上が見込めないと思っているので、そのような意味では間接的に関係あるかもしれません。

俺はAtCoderレート2824だけど、お前は?

2821笑

AtCoder以外の過去問は主にどこで拾っていましたか?

直接的に精進に寄与したのはAOJ-ICPCとyukicoderですね。他にも、最初期はJOIの予選問題を埋めていました。codeforcesは虚無埋めしかしていないですね。

赤色おめでとうございます!!!!!!!!!!!!「致した」とツイートした後にリンクを貼ることは競プロのレートにどのくらい寄与しましたか?

そのようなツイートを始めてから今まで2回のコンテストで+072しました!

次富山に帰るのはいつ頃になりそうですか

院試終わりです。8月の終わりになるか9月入ってからになるかは未定です。

競プロを引退する予定はありますか

ありません。今のところ引退しそうな気配もないですが、もし競プロを止めるなら、それはおそらくフェードアウトのような形になるでしょう。

赤おめでとうございます!いくつか質問させてください

  • 自分の得意分野、強みは何だと思いますか?

悩みどころですね……。まず、得意分野はないと思っています。逆に苦手な分野がないことが強みだと自負していましたが、最近数え上げが周りと比較して解けないように感じています。まあそれ以外に苦手だと思う分野はないので、ある程度まんべんなく解けると言っちゃってもいいかもしれません。

  • 作問はされますか?

その予定はないですが、機会があれば有志コンに出題するくらいはやってみてもいいかも?といった心構えです。

  • 同じ大学で注目している競プロerはいますか?

ちょっと前、立て続けに東北大学の競プロerが黄色になったので、これは僕もうかうかしていられないぞと彼らを注視していました。今でも注目していることはしているんですが、それ以来皆さん伸びが止まってしまわれて……。他にも、普段から順位表で所属:Tohoku Universityの動向は確認しているのですが、毎回いくつかの問題について僕より早くACする人が数人いて、気になっています。

  • 今後の目標は何ですか?

特にないですね。消極的ですが、色落ちしないことが目標と呼べるでしょうか。

解説ACをすることはありますか?それとも分からなかったら時間を置きますか?

コンテスト中に考えていた問題の解説を見ることもたまにありますし、コンテスト後のTLでキーワードを目にしたりもするので、確実なことは言えませんが、過去問精進で解説ACというのはここ2、3年くらいはほとんどないはずです。

競プロの得意分野は何ですか?

上のほうでも書きましたが、ないと思っています。強いて言えば簡単枠の速解きだったんですが、最近SSRSさんという化け物レベルの方が現れて……。

コードゴルフが好きな理由は何ですか?

昔は縮むごとに可読性を失っていくコードに惹かれていました。今はどちらかというと好きな理由ではなく止めない理由のほうが強くて、コードゴルフで負けることへの抵抗感からコードゴルフをしています。

最近読んだラノベで良かったものを教えてください

Twitterとかであまり言及していないものを見繕ってみました。「クラスの大嫌いな女子と結婚することになった。」「魔王2099」「時々ボソッとロシア語でデレる隣のアーリャさん」「D級冒険者の俺、なぜか勇者パーティーに勧誘されたあげく、王女につきまとわれてる」「隣のクーデレラを甘やかしたら、ウチの合鍵を渡すことになった」

一番好きなアルゴリズムはなんですか

SA-ISですかね。とにかく手数が多くて定数倍が重そうに見えるのに、競プロの入力サイズにおいてすら実用的なのが面白いです。

この世で最も尊敬する人物を聞かれたらこたつがめさんと答えます!!!致したツイートのオカズ助かります!!!!!!

ありがとうございます。これは一般論ですが、良いものは積極的に共有しましょう。

ゲーム問題のコツを教えてください

サイズが小さい状態・終わりに近い状態から考えることです。こう明言してしまってよいでしょう。また、実験の手間を厭わないことも重要です。実験を手で行うかプログラムを書くかは場合によりますが、例えば僕なら、dpテーブルが2次元以下の場合は目で分かりやすく表示できるので、プログラムを書くことが多いです。

就活してますか/どうでしたか

とりあえず長期インターンに内定をいただきました。院に進む予定なので、今の時点ではこれ以上のことをするつもりはありません。インターンに採用されるための努力のようなものは一切行わなかったので、かなり簡単に進んだなという印象です。

赤になってから一番初めに何で致しましたか?

この質問のおかげで、致すことに対していやに身構えてしまいました……。ツイートをお楽しみに。

ゴルフ以外で、精進としては週にどのくらいの練習をしていますか?

ここ1、2週間はちょっとばかり問題を解いていましたが、普段はほとんど精進していませんね。コンテストに参加するくらいなので、週10時間程度でしょうか。

ゴルフはアルゴの役に立っていますか?

立っていると思います。ごちゃっとした操作をまとめるアイディアだったり、典型的な問題のシンプルな解き方だったりは有用です。普段書くコードから短いというのも、タイプにかかる時間的に役に立っていそうですが、これはテンプレートを過剰に整備するほうが強いかもしれません。

ゆっくり実況動画、いつも楽しませていただいています!!

全然続編出なくてすいません、一度動画編集から気持ちが離れるとなかなか戻ってこれず……。一応画面の録画は今でも続けているので、素材(だけ)は充実してきています。

名前はこたつ 亀 ですか?こたつ game ですか?

亀です。こたつむりという言葉のシノニムのつもりです。こたつむりはあまりに一般的すぎるので、このように変えました。ヘッダーは4年ほど前にTLに流れてきたものを(作者の方に断って)使わせてもらっています。あまりにピッタリなイラストで、当時はびっくりしていました。

何学部ですか?

理学部です。

赤コーダーになったkotatsugameさんおすすめのpixiv絵(R-18)を教えてください

#コミックグレープ 告知/コミックグレープ - ぴょん吉のマンガ - pixiv

ぶっちゃけ、才能は何割くらい必要だと思いますか?

5割くらいですかね。残りは努力なんですが、こっちにも努力する才能のようなものが必要になる気がします。

好みのR18絵はなんですか?

2つ上の質問をご参照ください。

致したを報告することになったきっかけってなんですか?

高3の夏ごろからツイートしているようですが、まったく覚えていません……。「ねね」や「ぽきた」も同じ時期からツイートしているようなので、その頃から日々の行動をルーティンのように(同じ文面で)ツイートすることにハマっていたのかもしれません。今もハマっています。

精進の際意識することはありますか?(質問者は緑です)

ACした後に他の人のコードと自分のコードを読み比べてみることでしょうか。僕はコードゴルフをしようとして他の人のコードを読んでいたのですが、それによって知った実装方針などは普段のコーディングのときも非常に参考になりました。

コンテスト前のルーティンはありますか?

「ぞいぞいしてきた」とツイートするくらいです。

卒業できそう?

正直ここまでくれば余裕です。2年生の時に頑張ったのと、3年生からオンラインになって出席の必要がなくなったことが効きました。

解説 AC について、e.g: 「n 点問題ならしていい」「AGC はしないほうがいい」

ABCの問題ならすべて解説ACしてよいです。他にも、コンテスト中に考えて解けなかった問題の解説も(コンテスト直後なら)見てよいと思います。あとはあんまり見ない方向で。

トッポうまい

そういう意見もあります。僕は極細のポッキーが好きです。

赤色ってどれくらいすごいの?

わからん……。定量的な評価は置いておくとして、僕はここにたどり着くまでに5年かかった。

ベン・トーっていいよね.ところで競プロって半額弁当争奪戦みたいじゃないですか?ぼくどっちも未経験なんですけど.

競プロerは基本ハンドルネームで活動するし、オンサイトに遠征するし、そうかもしれん……。

最近golf参戦中のPython使いです。kotatsugameさんがgolfをする際の基準のようなものはありますか?「200Byte以下のgolfは興味がない」的なツイを以前見たので。

典型90問の時のツイートですね(以下ではなく以上でしたが)。あの時は90問一気にコードが公開されるから、長いコードを全部読む元気はないなあという意味合いでした。基準についてですが、dcやsedで解ける問題はゴルフするとして、他には、C++で実装するときに「別言語のあの機能を使うと簡単に書けるのに」と考えた問題を好んでゴルフしています。例えば、Pythonでいうmapanyが使える問題ですね。僕はあくまでC++使いなので、最初に実装するときは全部for文で書いているわけです。

AtCoderのコンテストのwriterになる予定はありますか

ありません。ここまで育ててくれたAtCoderで作問バイトして恩返し!みたいな気持ちはありますが、それ以上に、AtCoderでは常にcontestantでいたいという思いがあります。さらに言えば、contestantの立場でコードゴルフをしたいからです。

競プロにおける次の目標とかありますか

上のほうにも書きましたが、特にないので色落ちしないことを目標としておきます。

射精するたびに「致した」って呟くのはなぜですか?

botみたいに毎日の行動を同じ文面でツイートすることが好みだからです。寝るなら「ねね」、起きたら「ぽきた」、物を食べたら「食事」、その一環です。

今後の目標を教えてください

競プロに制限されていないので、別の趣味の話をしましょう。CHUNITHMでLv.14の鳥を出すことです。

いま一番会いたい競プロerは誰?

桃音モモさんです。

卒業したらどんな仕事をしたいですか

コードを書く仕事で年収高めなら何でもいいです。あまりこれがしたいという好みは考えていません。

Qiitaのコードゴルフ記事の更新まだですか?

す、すいません……。ですが現状、コードゴルフ記事の優先順位は僕の中でだいぶ低いので、予定は未定です。

まだ理解してないけどいつか理解したい競プロ知識ってなにかありますか?

いつかというか、すぐにでも理解したい・しなければならない競プロ知識として、「Segtree Beats」「HLD」「FPS」が挙げられます。これらは未履修ですが、最近有志コンでよく見るので、ちょっと焦燥感があります。あとは「平衡二分探索木」「Wavelet行列」もいつか理解したいですが、あまり焦ってはいません。

フェチってありますか

特にないと思います。敢えて言うならば胸が好きですが、フェチという言葉に暗黙的に含まれている「特殊さ」には当てはまらないものと思います。

beetさんに一言

鍵垢にフォロリク送ったら通してもらえますか?

黄色になってからの精進について詳しく教えて欲しいです。

精進の記録をつけていないので、ちょっとあやふやです……。確か、AGCの900点以下を(解説を開いた問題もありつつ)埋めたのが橙になる少し前のことだったと思います。橙になってからは、ARC-Cを埋めたり、AtCoder ProblemsのRecommendationを下から順に埋めたりしていました。埋め具合はこの記事の冒頭にあるスクリーンショットの通りです。合間合間でAOJ-ICPCも挟んで、橙になるころには400点まで埋まっていたはずです。今は550点までのほとんどが埋まっています。他にはAOJでPCKの過去問を埋めたり、codeforcesでdiv.3を埋めたりしましたが、これらは虚無埋めなので精進とは呼べなそうです。

致すときに心掛けていることはなんですか

時間をかけないことです。

大学生のうちにしておきたいこと

特に思いつきませんね……。ひたすら好きなことだけやって過ごす、とかはすでに今やっていると言えます。

ん?今何でもするって言ったよね?

するとは言ってないんだよなあ……。(2回目)

ライバル、期待している競プロerについて教えてください

ライバルは特に考えていません。順位表で自分の上にどんな人がいるかくらいは確認しますが、自分の下は見ません。期待している競プロerについてですが、桃音モモさんには頑張ってほしいと思っています。俺、ここで待ってるからよ……!他にも、僕が高3のころに科オリ界隈で繋がった人々が続々競プロに参入しているので、彼らにも注目しています。

AtCoderコードゴルフの思い出が深い問題を教えてください

atcoder.jp

いつだかの配信中に縮めた問題です。謎の式変形の結果、ほとんどdc専用のような式が得られたのが印象に残っています。その式変形については以下の週記の土曜日の項を参照のこと。

週記(2021/03/29-2021/04/04) - kotatsugameの日記

また heno239 さんとコラボする予定はありますか?

予定は特にありませんが、いつでもコラボするくらいの心構えでいます。自分から話を持ち掛けたりはしないんですが……。

好きな言語ベスト3、オススメ言語ベスト3とか

好きな言語:1位Raku、2位Octave、3位Haskell

オススメ言語:1位Ruby、2位Octave、3位AWK

得意な言語ベスト3とか

コードゴルフの意味で得意な言語を考えてみました。1位Raku、2位Octave、3位AWK

AtCoderの面白いと思った問題・思い入れのある問題を教えて!

atcoder.jp

面白いと思った問題です。サンプルのふりして巧妙なヒントになっていて、聞いたときは上手いなあと思いました。ちなみに、操作回数が1000回になるような数にはもっと小さいものが存在して、言語アップデート前の最短コードはその改善で取られてしまったものでした。

atcoder.jp

思い入れのある問題はこちら。僕が初めて解説ACした問題です。コンテスト後に解説放送を見てその解法に衝撃を受けたことを覚えています。いま改めて考えてみれば、結構分不相応な問題にチャレンジしたなあという感じですが、解法を正しく実装してACが取れたので自信につながったことを覚えています。

Perlのショートコードが全然理解できません。ABC001C風力観測のコードの解説してほしいです。

僕のQiitaの記事を読んでいるものとして、<>=~$"$-、裸の単語、/./gについては説明しません。

print<>=~$"*15>($-=$')?C:(eval$_.y/NWS/SEN/r)[-$`/225-.5],$".grep($--=2*ord,"'6?KT]clox~"=~/./g).$/for'N,NNW,NW,WNW,W,WSW,SW,SSW,'

まず、全体が後置forで囲まれているわけですが、これはループが目的ではなく、特殊変数$_に値を設定することが目的です。具体的には、$_='N,NNW,...'になります。

このとき、$_と、その文字列のNWSSENにそれぞれ置換したものを連結すると、出力すべき文字列が角度順にうまく並んでくれます。Perlコードとしてevalすることで文字列のリストを得ます。ここまでが(eval$_.y/NWS/SEN/r)の意味です。y///はそのままだと$_を書き換えてしまうので、rフラグを付けて書き換えないようにしています。

次に風力を計算します。これは、適切な数列を用意したとき、「数列の先頭から順に値をDisから引いていき、Disが0より大となる要素数」とすることができます。風速の階差を取っている感じです。ここで、適切な数列の値を2分の1にして文字コードに直すことで、数列を文字コードとして埋め込むことができます。それが"'6?KT]clox~"で、もとに戻すには/./gで文字ごとのリストを得て、2*ordを計算すればよいです。

Disは変数$-に代入されているので、そのまま引き算していくことでDisが0より大であるかがわかります。grepでそのようなDisに対する文字のリストが得られますが、この長さが風力なので、文字列$"$/と連結することでリストを無理やりスカラとして評価し、長さを得ています。

このくらいでしょうか。もしまだわからない点があるようでしたら、ぜひTwitterやDMでもご質問ください。Perlのショートコードは、まずトークンごとにパースして、演算子の優先順位を抑えつつ、値がリストコンテキストで評価されているかスカラコンテキストで評価されているかを見ていけば読めると思っています。

入赤おめでとうございます!コードゴルフやろうってなったきっかけが知りたいです!

ありがとうございます。僕は最初にC++言語でコードゴルフをしていました。教材のコードからいくつかスペースを抜いても動くことに気づき、そこから調べてコードゴルフという競技のことを知り、あとはテクニックなどを調べているうちにズブズブです。多分こんな感じの流れだったと思いますが、何分昔のことなのであいまいです。