今年もやってみます
今年書いたもの
カスの記事
カスの記事を上げることでしか消化できない欲求があります。
いま確認したところ、期間限定公開の方は web.archive.org にアーカイブが残っていましたが、公開終了した後のものでした。アーカイブされたのを確認してから公開終了という流れにしてもよかったかなあ(インターネットしぐさ)。
はてなブログ関連
気まぐれアルゴリズム
- 期待 $O(n)$ 時間の前処理で、クエリごと最悪 $O(1)$ 時間で座標圧縮しようかな
- 順列の LIS を $O(n \log(\log(n)))$ 時間で求めてみようかな
- 順列と言っているものが、一般の $S!$ のことではなくて $\{0, 1, \dots, n-1\}!$ なので怒られる
- ある種の無限級数を DP で求める
- 有理数上の二分探索(ざっくり導入編)
- Stern–Brocot tree、最近は頻出寄りになっていそう
- rational reconstruction の解説をしようかな
- 素因数分解を $\angled{O(n), O(\log(n)/\log(\log(n)))}$ で行う
- 中央値関連のライブラリに関して
- 形式的冪級数に関する一階常微分方程式を解く
- s-factorization を求めたり run enumerate を解いたり
- ポインタ木なしで償却 $O(\log(n)²)$ 時間の predecessor query
かわいそうシリーズ
- コンパイラの警告を無視してバグらせる人かわいそう
- バグらせやすい書き方をすれば当然バグは出やすい
- mod についてふんわりとしか理解していない競プロ er のみなさん
- ソースコードを見て計算量を下から抑えるのは怪しいという話
振り返り
- Toyota Programming Contest 2023 Spring Final など参加記
- オンサイトがかなり過去のことのように思えます
- ABC-E をうめました
DP 関連
メンタルモデルを形成したり、愚直に考える(というか、計算量を一旦忘れて、入出力がなんなのかを数学的に意識する)ことをしたりするのは大事だよな〜と思ったシリーズでした。
数式がちゃがちゃ
このあたりで数学がちゃがちゃをしていたことが、後に浮動小数点数シリーズに足を踏み入れるきっかけになったような気もします。
ブラックボックスのお勉強
assembly を眺めて考えて、むむーとなって楽しかったです。コンパイラ側のコードを読めというのは正しいと思っているものの、二通りある楽しみ方の片方を選んじゃったかなという感じです。
浮動小数点数
- Sqrt Inequality の誤差評価
floor(n / 10.0)
とfloor(n * 0.1)
は等価?(1.0 / 49.0) * 49.0 < 1.0
についてu64
の平方根をf64
で計算するやつに関して- xx.yy を 100 倍したら xxyy にできる?
最近はここに興味を持っていますね。 入門用記事を書いている途中なのですが、年内はちょっと厳しそうです。 1 月中には上げられたらうれしいですね。あるいは 2024 年内には上がらないかもしれません。
Sqrt Inequality に関しては、ブラックボックスのお勉強シリーズにも含まれるかもしれません。公式解説で言及されていた eps = 1.0E-14
がよくわからなかったので、ちゃんとわかりたい気持ちがあったんですよね。記事を書いた当時、出題から 3.5 年も経っていたことに驚きました。最近始めた人は知らない問題かもしれません。
今年買ったもの
浮動小数点数のお勉強のときに、
- Concrete Mathematics: A Foundation for Computer Science, 2nd Edition By Ronald L. Graham, Donald E. Knuth, Oren Patashnik
- Art of Computer Programming, Volume 2: Seminumerical Algorithms By Donald E. Knuth
- Accuracy and Stability of Numerical Algorithms By Nicholas J. Higham
などを買ったりしました。前者二つは、8 億円くらいするようなイメージだったのですが、割引コードによって計 1 万円弱で買えて、大変お得でした。最後のはもう少し高かったです。Concrete Math は浮動小数点数関連書籍ではないのですが、前々から気になっていた本だったのと、割引適用のために 2 冊以上買う必要があったので、ちょうどいいと思って買いました。
あと ダウナー系お姉さんに毎日カスの嘘を流し込まれる音声【CV:餅梨あむ】 も書いました。こういうのってもっと高いのかなと思っていました。“““カスの嘘 100 連発””” というタイトルから感じる狂気が好きですね。100 連発を 100 ファイルに分けてシャッフルして、カスの嘘イントロクイズをやりたい気持ちになります。ループすると、#100 の嘘と #1 の嘘でテンションがやや違って面白いです。
他にも、MacBook Pro を買ったり、めがね(かわいい)を買ったりしました。
あの、衝動買いしました pic.twitter.com/Cwkie60rnz
— えびちゃん🍑🍝🦃 (@rsk0315_h4x) March 4, 2023
衝動買いには Mac も含まれています。実はね。
お気に入り情報です pic.twitter.com/Cu5MlZs2uB
— えびちゃん🍑🍝🦃 (@rsk0315_h4x) May 20, 2023
そういえば、【天才博士bot】博士らしい格言31語 日めくりカレンダー も買いました。適切にめくる習慣をつけない場合、特定の日付だけを見る可能性がグッと高まります。不要な月極サービスを解約しやすくなりました*1。
これでした pic.twitter.com/QciJdmoYbX
— えびちゃん🍑🍝🦃 (@rsk0315_h4x) November 18, 2023
来年に向けて
浮動小数点数まわりの話がある程度落ちついたら、FPS や ABC-G 典型をわかっていきたい気持ちがあります。いつまでも解けないままでいるのはつまらないので。 あと ARC 寄りの頭になれるとうれしい気持ちもあるものの、いまいち続かないので困ります。こういうのは(少なくとも、特定の期日までに成長する必要がない限りは)興味深さ優先探索でいい気がしているので、一旦は ABC の方をつぶしたいかなという気持ちです。
- FPS 全般
- stack を使って高速化できる系のやつ
- e.g. ABC 234 G
- フローに帰着できるやつ
- というよりは最小カットとかを学ぶべきそう
- lowlink
- 5 年前くらいから知ってはいるのに、まだお友だちじゃない
- 高速何々変換シリーズ
- これもわかってなさの方向性としては FPS に近いか
- 非不偏ゲーム
- e.g. ABC 229 H
- ABC 卒業的な意味で優先度は高くない気がするものの、こういうのに惹かれちゃう
ABC-{G, H, Ex} くらいに関しては、解説をざっと一通り斜め読みしてジャンル分けして、知りたいところをつまめるように索引っぽくしておくとよさそうな気もしています。それはそれとして ABC-F も埋めなきゃだと思うので、G 以降のお勉強が飽きたら交互に、って感じにしようかなあ。
結局のところ、「レートを上げるためのお勉強」という感じではなくて、自分が知らないところをつぶしたいという感じに近そうです。自分が複数人いて複数のトピックを並行してつぶせたらうれしいのになあという気持ちです。 そういう意味合いだと、学校での授業は、複数の科目を時間ごとに区切って並行して学べるのでうれしいというような気もします。
労働している場合ではなくて、隠居して勉強だけしてたくない?という身勝手な欲求も生えそうです。 「社会人になると時間が取れないというのは甘えで、捻出できる時間はいくらでもあるでしょ」のような指摘は正しい側面もあるとは思うんですが、的外れでもある気はします。そもそもいくらでもあるというのが嘘なので。
競プロ以外
うれしい
えびちゃんが Twitter を始めてすぐ(11 年前くらい)からのフォロヮと初めてオフで会いました。 会いたい人とは会えるうちに会っておいた方がいいですね。 一部のフォロヮやインターネットストーキングが得意な人は写真を見たかもしれません。
え、11 年も Twitter やってたんですか、こわすぎる。
おいしい
肉つけ麺ちゃん食べて元気出た pic.twitter.com/oavAWv8eJL
— えびちゃん🍑🍝🦃 (@rsk0315_h4x) December 16, 2023
何年か前によく行っていたところ(生活圏内から遠め)と同じ系列のお店が、実は生活圏内に存在していたことがわかったので、最近行きました。
かわいい
M.L.V.G ってペンライトの色から来てるじゃんというのにさっき気づいた pic.twitter.com/KCZCb2Q0Z7
— えびちゃん🍑🍝🦃 (@rsk0315_h4x) October 6, 2023
環お姉ちゃんに沼りそうです。水篠 環 ちゃんです。一人称が「環ちゃん」なの、えびちゃんと親近感がありますね。
M.L.V.G は環お姉ちゃんの曲ではないですね。環お姉ちゃんの曲は出るのでしょうか。
M.L.V.G がテトラの子たちのペンライトカラーの頭文字 (midnight blue, lemon chiffon, vermilion, gainsboro) になっていることと、譜面が文字押し(押し?)になっていることに最近気づきました。文字押しと言えば、jubeat の Qubellic Prism ラストの TYFP (thank you for playing) を最近見て、いいなーってなりました(オタクはそういうのが好きなので)。
かっこいい
あーなるほどなるほど(manim を触ってみています) pic.twitter.com/LOcCJMjg3t
— えびちゃん🍑🍝🦃 (@rsk0315_h4x) November 12, 2023
3b1b/manim のアニメーション、かっこいいです。 あと 3B1B の日本語翻訳版のナレーションの人の声や話し方がめちゃ好きです。
たのしい
5/5 が 4/5 の 3 倍になった pic.twitter.com/rnUOHyF33F
— えびちゃん🍑🍝🦃 (@rsk0315_h4x) December 17, 2023
wafflegame を続けています。5/5 を狙うようになってから別ゲーと化したような気がします。royale や deluxe はむずかしいです。
「J が入っていたら ninja, emoji になりがち。たまに eject もある」などの典型があります。ところで、🥷 は ninja でもあり emoji でもあって面白いです。
5/5 でクリアするのは、(答えがわかっている前提なら)下記を $1\le A_i\le26$ で解く(復元つき)のに帰着できる気がします。$N$ の上限は $16$ (daily) だったり $26$ (deluxe) だったりです。royale はよくわかりませんが $21$ 前後くらいでしょうか。
最適行動をしたときのムーブ数が既知情報なので、それも使えるのかもしれません?
おわり
来年もよろしくおねがいします。
*1:買った人にだけしか伝わらない気がしますが、まぁよいでしょう。