週記(2020/11/23-2020/11/29)

11/23(月)

先週日曜日、週記を投稿してからの話。まずサークル解説会のスライドを生やした。ABC183のBCD問題だ。問題概要を書かず問題文を読んでくれと言ったりなど手抜き感はすごい。

これはlcm(m,m')と等しいらしい。全然わからんかった。

週記(2020/11/16-2020/11/22) - kotatsugameの日記

testestestさんから「n/gcd(n/m,n/m')=lcm(m,m')n-min(n-m,n-m')=max(m,m')と比べると自明」との考え方を教えてもらった。なるほど~。

布団に入ってなろうの更新を確認したところ、ついに「Game of Vampire」が完結していた。

syosetu.org

めちゃめちゃ長いがめちゃめちゃ面白いので、かなりおすすめ。実際のところ(これはおすすめのなろう小説まとめにも書いたことだが)ヴォルデモートが死ぬまでが一番面白く、そこで一段落つく感じはあるので、そこまで読むのでもいいかもしれない。それでも半分強、300話くらいになるが。僕はこの一段落ついたところで新しい舞台・展開に移行するのに耐えるのが苦しかった。それまでの話が心にこびりついていたのだ。

そのあと別のなろうを読む。先週月曜日から読んでいた「サイレント・ウィッチ」だ。

https://ncode.syosetu.com/n8356ga/

これをずっと読んでいたら昼過ぎになってしまい、そろそろ寝ないとな~と思っていたらKing of Performai 2020 DAY3の生放送が始まった。今日はチュウニズムの大会らしい。見たい!小説家になろうも読みたい!どうしようもないので、今日は寝ないことにする。結構久しぶりの徹夜。僕の認識的には日曜日で月曜日がつぶれた形だが、先週の週記はもう投稿してしまったため、こうして月曜日の部分を作った。

スマホの画面を上下で分けて、生放送の画面を見つつなろうを読む。プレイが始まったら生放送に集中して、それ以外の時間で読み進めていく。炎上2落ちと大鳥居9950で開いた口が塞がらなかった。ガラクタとパッソ2曲で-73というスコアは、これだけでご飯3杯はいける。チュウニズムがマジで上手い人たちはチュウニズムがマジで上手いということが分かった。

生放送が終了した後眠気に耐えつつ「サイレント・ウィッチ」を読み切る。面白かった。ただまあ、チート無双が大好きな僕としては正体を隠してどうこうする系の話は正体を明かした後の周囲のモブの反応をもっと見せてほしいという希望がある。クライマックスで明かすというのは劇的ではあるが、その後の話が存在し得ないため悲しい。とはいえ面白かったのは間違いない。

信じられないくらい眠いが、午後8時のサークル解説会まで起きている必要がある。後日譚を読もうとしたらたった2話なのに意識を飛ばしまくってかなり時間がかかってしまった。これはまずいということでシャワーを浴びると、少しマシになった。食事などをして時間を待つ。先週考察を済ませたけど実装してなかった問題を1問通した。かなり面倒くさい感じだったが、考察ができてからしばらく時間をおいた結果実装が頭の中に出来上がっていたため、なんとか書ききれた。

サークル解説会。多少目が覚めたので、発表も考えていたことはしゃべることができた。午後9時からコンテストがあるらしいので、早めに終了。解説会で使用したスライドを外部に公開してはどうか、という意見が以前出たので、これに対応する必要がある。さっきまではすぐにでも寝て明日やろうと考えていたのだが、解説会が終わった今微妙に眠気が醒めているので、やってしまうことにする。

まずサークルで共有のGoogle Driveにフォルダを作成し、解説スライドを置く。次に公式サイトで記事を作成し、Google Driveに置いたスライドそれぞれへのリンクを貼る。ここまでやってホスフィンに確認してもらったところ、いくつか改善すべきところがあるらしいが、正直よくわからないので全部ぶん投げた。

puzzleknot.org

最終的にこんな感じになった。こういう記事が毎週増えていくことになる。

これ面白いな。同じ問題を何度もACしたとき、それらが全部集計された場合のグラフは初めて見た。こんなことになっているのか。微妙なところだが、6月から2か月ほどは傾きがいくぶん急で、最近は逆に傾きが緩やかであることが見て取れる。

午後10時、寝る。

11/24(火)

朝結構早い時間に起きて、二度寝をしたりなろうを読んだりした後、空腹に耐えかねて午前9時に起床報告をした。

最近、ホスフィンにおすすめされて焼そばバゴォーンというカップ焼きそばを買った。ちょうどいいのでこの時食べてみたのだが、ペヤングとの味の違いが判らなかった。わかめスープも、別に湯切りのときのお湯で作るといったことは書いてなかったので、一般のインスタントスープと同様に別にお湯を沸かして作った。カップ焼きそばとインスタントスープを別々に買ってもいいのではないだろうか。

ペヤングでいいじゃんという結論に達しそうになったのだが、調べたところ焼そばバゴォーンのほうが安いらしいのだ。またペヤングはサイズがn2nとそれ以上しかなくてちょうどいいサイズがないが、焼そばバゴォーンはいい感じのサイズ感だった。カップ焼きそばに味の違いは存在しないため、まあこれを買ってもいいのかな。

かなり眠いので布団にダイブする。明日提出のレポートが存在するが、一切顧みず布団でyoutubeを見たり本を読んだりしていた。寝てしまうと生活リズムが大変なことになるので、そうやすやすと意識を落とすわけにもいかない。今日はAtCoderをプレイしていないな、と思いパソコンの前に戻ってしばらくキーボードを叩いていたりもしたが、レポートを書く気はない。

この実装は頻繁に使う。そもそも動的にサイズを増やせる2次元配列というのは高級すぎる概念のため、サポートしているプログラミング言語は限られる。その限られたプログラミング言語が世の中のシェアのほとんどを占めているというのも事実なので、実際これができない言語はあまり使われなさそう。ほかにも、例えばPascalだとArray of Arrayを使って毎回setlengthを呼び出すことで似たようなことができるが、いかにも面倒そうだ。定数倍も気になる。

そんなときに、上のツイートのテクニックは非常に強い味方となる。何せ固定長の配列が3つだけでよいのだ。僕はこれを自分で考えて使っているが、似たようなものは何度も何度も再発明されてきたことだろう。これより効率のいい書き方はあるのだろうか。辺を読み込んでから一気に処理するとかすれば、シーケンシャルアクセスも達成できたりしないだろうか。僕がこのテクニックを使う言語はそういうキャッシュヒットの定数倍が問題にならないくらい何もかも低速な言語なので、全然考えていない。

途中外から爆音が聞こえてきて敵襲かと思ったが、よく聞いてみると花火の音だった。検索しても仙台市で花火をするような予定はなさそう。謎である。

再度布団に入り、本を1冊読み切った。「君を描けば嘘になる」という本だ。「アート」と「才能」の話。これの数か月前に文庫になった「彼女の色に届くまで」という本も同じテーマの話だった(こちらは似鳥鶏さんの作品で、ミステリ色も強いが)。非常に面白かったので、それからしばらくはアート関係の小説に敏感になっていて、その流れで購入を決めた。

「君を描けば嘘になる」もとんでもなく面白かった。読み終わってから感情に整理をつけるまでしばらく身動きができなかった。

布団で動けなくなったままTwitterをしていたが、いつの間にか寝落ちした。

11/25(水)

午前5時、起きる。二度寝したいような気分になるが、よく考えれば今日提出のレポートが手つかずである。観念して起き上がり、食事してからレポートを書き始めた。

途中小説家になろうの更新を確認したりシャワーを浴びたりしながら、6時間弱かけて書き上げる。1問は解くのをあきらめた。「標本化定理」を応用した実社会の技術を(CD以外で)挙げよ、という問題。実社会のことを意識しながら生活したことがないためこういう系統の課題はほとんど不可能。

最後時間がなかったのでWolframAlphaに投げて帰ってきた答えをそのまま書いてしまった。sgn関数が出てきて難しそう、と思って理解するのを諦めたのだが、リプライで教えてもらった。どうやら典型的な広義積分の公式で1発らしい。積分難しすぎる。

レポートを提出する。山の上の研究室まで行って提出しなければならないらしい。

週記(2020/11/02-2020/11/08) - kotatsugameの日記

これと同じ講義のレポートで、今日も山の上に登る。途中道の長い区間が片側通行になっていて、待ち時間が発生し微妙に時間がヤバくなってしまった。300という表示を見て5分!?と目の玉をひん剥いてしまったが、3:00だった。3分も十分長いぞ。こういう片側通行の待ち時間の相場がわからず、前から車が来る様子もないし、後ろに別の車が待っているし……ということもあり、実は無視して進むのが正解なのではないか、と、待ち時間は戦々恐々としたまま過ごした。

たいぺーと合流してレポートを提出、食事して別れた。たいぺーはゼミらしい。僕はそのまま山を降り、川内キャンパスで床屋に入った。

家に帰ってポストを見ると、花火のお知らせが入っていた。近くの高校で上げたようだ。昨日の花火はどうやらこれらしい。前もってお知らせされていたのに、ポストを確認する習慣がないため気づかなかった。ところで、この情報から僕が住んでいる場所をある程度絞ることができる。学食の行き帰りのツイートなどを注意深く観察すれば同様の情報は得られるものだと考えているので、気にせずインターネッツに大公開している。

bcで1000ACした。

1000ACの言語はこれでC++AWKJuliaPerlRubyPascalに続く7個目だ。bcはかなり苦労した。正直800ACのあたりからもう増えないだろと考えていたのだが、実装が嫌なだけでやれば解けるという問題は探せばまだ存在した。ARC-Bなどは実装してみてTLEするかしないか確認するゲームになっている。昨日紹介した、固定長配列3本でグラフの隣接リストを保持するテクニックもかなり使用する。

布団に入ってなろうを読む。1作追いついた。

https://ncode.syosetu.com/n2477fb/

これを読んだ直後あたりに今年のJOI一次予選(第3回)の問題が公開されたことに気づき、急いでパソコンの前に座ってコードを縮めた。今回も公開された直後に気づくことができてほっとした。現在3問すべての最短コードを保持している。

今日、というか明日朝までのレポートが1つ残っているので、書く。レポートとは言ってもほんの小テスト程度の内容なのでササッと終わらせる。

そういえばネットオフという古本サイトで使用できるクーポンが明日までのようだ。9点以上購入で10%オフ、20点以上購入で15%オフ。いつか買おうと思ってお気に入り登録だけして放置していた本をカートに入れる。1万円くらいになった。クレカ支払いでなければ受けられないサービスがあり、僕はクレカを持っていないため、父に電話してクレカ番号を教えてもらう。1万円は高すぎるだろうという指摘を受けて、シリーズを1つ諦めることにした。すると今度は3000円を割り込んで送料がかかるようになってしまったため、別の作品を再度追加して4000円程度にした。

これを書きながら、以前は「立て替えてもらう」という認識だったのが、いつの間にか「買ってもらう」になってしまっていることに気づいてびっくりした。甘えすぎである。自分でも十分出せる金額なのだから、ちゃんと「立て替えてもらう」という認識で臨めばシリーズを1つ諦めなくてよかったのに。何らかのお祝いで数度「買ってもら」ったことがあって、それを意識してしまっていた。

父がテレワークで使う用にモニタを1枚買うつもりらしい。端子がいろいろあってややこしいのでお店の人に聞くのが一番であると答えた。僕の実家の自室においてあるモニタを1枚使って感覚を試してみては、ともアドバイスした。そのあと椅子に突き刺さって寝ていたらもう一度電話がかかってきて、モニタが映らないとの相談を受けた。遠隔でパソコン系のやり取りをするのは難しいことが知られているが、何とか頑張る。

まずディスプレイ設定を開くと、モニタを認識していなさそうな感じがする(後から考えれば、この時すでに認識していたかもしれない)。モニタの電源をつけると、「DVI NO SIGNAL」という表示が出る。ケーブルを見せてもらうとHDMIで接続しているので、これはおかしい。このときケーブルを(端子は同じだが)別のものに交換した。ググってみるとモニタの入力端子は切り替えなければならないようなので、モニタの下についているボタンを見せてもらう。それっぽいマークがついているボタンをいじってもらうと、何の拍子にか「HDMI NO SIGNAL」という表示に変わる。ケーブルを元のものに取り換えていると、見事映った。おそらく再起動か再接続が必要だったのだろう。

無事解決できてハッピー。通話を終了する。眠気が覚めたので日記を書いていた。昨日は寝落ちしたし、月曜日も眠くて書けなかったので、3日分を一気に書いた。

布団に入って少しハーメルンを読み、午前3時くらいに就寝。

11/26(木)

午前9時、起床。ARCで青パフォを出す夢を見て飛び起きた。最悪の目覚め。

布団に横になったままラノベを読む。夏に買いあさった古本のうち1シリーズ。「ゾディアック・ウィッチーズ」という題名で、2巻で打ち切りのようだ。特に受け入れがたい文章や設定はないが、あんまり記憶にも残らない。正体・実力を隠している主人公が、それをヒロインにも明かさないままシリーズ打ち切りを迎えていて世知辛い気分になった。

新刊で買った本でも特に記憶に残らず2巻で打ち切りになるようなものは沢山あるが、やはり「打ち切りになるかもしれない」と「打ち切りになってしまった」の間には大きな隔たりがある。「打ち切りになってしまった」という情報を念頭に作品を読んでもあまり楽しめないということに気づいた。まあ本棚を埋めるために買っているようなものなので、特に問題はない。辞めるつもりもない。

積読を消化して気が抜けたのか、布団に転がってハーメルンを読んでいたら寝てしまった。次に起きたら午後10時だった。およそ8時間寝た。

別のラノベを読みつつ、午前1時からのSRMに向けてシャワーを浴びたり食事を摂ったりしていたが、開始1時間前にコンテストが中止になってしまった。

手持ち無沙汰になる。うっかり5chまとめサイトを訪れてしまうが、強い意志でページを閉じてyukicoderを少し進める。星3を埋めていたのだが、初手がわからない問題がいくつかあって考える気を失い、後回しにしてしまった。

合間合間でラノベを読んでいて、また古本の1シリーズを読み切った。「リベンジ・オンライン」。2巻で打ち切りである。イラストを担当しているのが魔太郎さんという方で、それを目当てに購入したところ、本文がひどかった。母親への悪口で貧乳という語彙が出現するのが耐えられなかった。まあ読み切ったんですが。

イラストレーターで選んだラノベはあんまりおもしろく感じられないという自説があって、古本だとそれも一入といったところか。設定に一切興味が抱けなかったのも問題である。これから古本を買うときはちゃんとあらすじを確認したい。「ゾディアック・ウィッチーズ」のほうはちゃんとあらすじを確認してあり、少し興味が惹かれたため買っている。

夜が明けた後もずっとyukicoderを進めていた。かなり定数倍高速化を頑張って手元では十分通る速度が出るようになったのに、yukicoderでは通らないというコードがあって悲しい。想定解でないことは確かか。f(A_i,B_j)をたくさん計算しているが、最悪ケースはABも同じ数ばかり並んでいるので、それをメモ化すれば通りそう。fの計算に時間がかかるようなABの組もそう数はないので、まあ通りそうな解法ではあるが、ちょっと悔しいし今日はあきらめることにしよう。

昼前におなかがすいたのでパックご飯を食べた。間に8時間寝ていたけど、それを勘案しなければこれで今日は4食目となる。パックご飯・パスタ・パスタ・パックご飯だ。ちょっと危機感を覚える。野菜を摂るのが本当に難しい。サラダとかあればいくらでも食べるんだけど、用意できないためない。

布団に入って新しくハーメルンを読み始める。昨日まで読んでいたものはどうにも合わなかったので諦めた(「偽聖女クソオブザイヤー」という作品だった)。

東方帽子屋 - ハーメルン

午後2時、寝る。昼寝のせいで生活リズムが一瞬で逆転してしまった。ちなみに、毎週気にしていた金曜2限の課題は、今週もないようだ。

11/27(金)

午後11時、起床。yukicoderに寝坊した。これは不味い。明日配達される生協の弁当を受け取れないかもしれないし、ARCに寝坊してしまうかもしれない。今日の就寝時間で何とかずれを戻さなければならない。

TechFULの結果が出ていた。全体7位で1000円ぶんのアマゾンギフト券がもらえるようだ。

そもそも解法を得るのに1時間以上かかってしまっていたため、別にREがなくてもそんな良いスコアではなかったかもしれない。それはともかく50000回の再帰でREを起こすような環境で競技プログラミングのまねごとをさせられたのが本当に気に入らない。

週記(2020/11/16-2020/11/22) - kotatsugameの日記

当時はかなりキレていたが、ふたを開けてみれば同じところでハマった人は僕だけではないようだし、ほとんどやるだけの問題たちをなぎ倒して金銭が得られると単純に気分がいい。次回も出たい。ゴミカス環境であることさえ前もって覚悟していれば、何が起こっても競技プログラミングじゃないしな、という気分でとらえられるかもしれない。

水曜日に注文した古本が発送されたらしい。土日は配達業も休みなのかな。通販でものを頼むと届くまで毎日そわそわしてしまう。配送追跡サービスなども毎日確認してしまう。届いたらまた写真に撮ってTwitterに上げよう。本棚の余裕も十分である。

yukicoderのupsolveをする。D問題は蟻本に載っているかなり典型的な最小費用流。E問題は最近AtCoderで出題されたFiguresとの関連性があるらしいが、両方何もわからない。つらい。解説を見るのももったいなく感じてしまう。

PCKの問題を少し進めつつラノベをまた1シリーズ読んだ。「サ法使いの師匠ちゃん」2巻で打ち切りだ。結構面白かった。キャラもかわいらしくていい感じ。そのあと「りゅうおうのおしごと!13」を60ページくらい読んで、寝なければと思い切り上げた。

午前11時くらいに布団に入って、さらにしばらくハーメルンを読んでいた。午後1時就寝。

11/28(土)

生協からの弁当の配達のこともあって眠りが浅かった。午後4時に目覚ましで目を覚ます。これから2時間のうちどこかで配達が来るので、それに対応するために起きている必要がある。先週はかなり早く来たのでそのあとすぐに寝られたが、今日はどうなるだろうか。ちゃんと睡眠時間を確保するためにも毎週早めに来てほしいものだ。

結局、午後4時半くらいに来た。微妙に意識を落としていたが、問題なく反応できた。受け取ってまたすぐ寝る。次に起きたのは午後7時半だった。これも目覚ましで起きた。

食事をとってシャワーを浴び、ARCに向けて準備をする。具体的には提出言語をC++に合わせるために適当な問題に提出しておく。

ARC109は4完184位でパフォーマンス2304、レートは2680→2647と-33してしまった。

3完までは非常にスムーズにいって、確か10位くらいだったと思う。B問題を証明していなかったが、当時はそのことに気づいていなかった。今考えるとどうして何の疑いもなく提出したのか結構謎である。

Dは見た瞬間に始めと終わりをいくつか全探索するだけの問題だと思って、ICPCみたいな問題だなと思いながら迷いなく重実装に突っ込んでいった。実装方針を決めた後順位表を確認してもあまり通されていなさそうだったので、安心してネットリ実装をしたがWA。結局3回もWAを出してしまった。そうしているうちに、みるみるDのsolvedが増えていった。AtCoderのペナルティシステム上、Cまでがいくら速くてもDがこうも遅いと順位は崩壊してしまう。精神も崩壊しかける。

残り30分あたりでEにも目を通してみたが、パッと見てよくわからなかったのでDのデバッグを続ける。全探索する範囲を増やしてもWAは取れなかったので、そこ以外の部分だろうとあたりをつけて、マジックナンバーを確認したりしていたが、結局始めと終わりをつなぐ部分の計算が間違っていたことに気づいた。これを修正してAC。残り20分くらいのことである。

Eにチャレンジする。焦っているので適当なエスパーをして実装してみる。エスパーしたくせにその考察も紙の上で詰めていないため、ひたすら合わない。コンテストが終了してから数分後にサンプル1が合ったが、サンプル2以降は当然のようにWAだったので投げ出す。

解説を読むと、ネットリ系問題だと思っていたDは考えもしなかった方針で実験結果をプロットして規則性を明らかにしていた。重実装やるだけだと思った瞬間にすべての考察を打ち切ってしまったが、なるほどちゃんとARCらしい問題ではあったのか。ARCらしさというのもまだつかみ切れていないが。

Eはエスパーで解いた人が多いらしい。どうしようもない。キレたい気持ちもあるが、結局Dに80分以上も費やしてしまった時点で負けは確定であった。かなり精神が終了してしまった。

昨日読み止しにしていた「りゅうおうのおしごと!13」を読み終えた。今巻は短編集のような位置づけ。一般的なラノベシリーズの短編集というのは、ナンバリングが半整数だったりそもそも別シリーズとしてカウントされたりしがちで、さらに構成も「特典小説など」+「書き下ろし短編」が列挙される感じのものが多いが、「りゅうおうのおしごと!」シリーズの短編集(8巻と13巻)は「書き下ろし短編」の中の話として「特典小説など」が挟み込まれるタイプで、他には見たことがない(覚えていないだけかもしれない)。特典小説とは言っても、どれもドラマCDの台本の小説化のようでボリュームがある。

内容についてだが……正直あまり楽しめなかった。これは作品が悪いのではなく、僕の精神状態が最悪だったため。読むタイミングを失って9月からずっと積んでいたのだが、今読むのはちょっともったいなかったな。

ノムリッシュQVC福島や淫夢実況などを視聴していくらか精神が回復した。

11/29(日)

土曜日の日記を書いて、寝たのが40時だったので、日曜日が消え失せてしまった。代わりに、日記を書いてから寝るまでのこと(狭義日曜日のこと)をここに書いておこうと思う。

ICPC国内予選参加記には「サークル運営としてのICPC参加記も書きたいと思います」というようなことを書いていたが、実際にはまだ書いていなかった。Twitterのbioで管理しているToDoリストに残りっぱなしなのもよろしくないため、書いた。

kotatsugame.hatenablog.com

同じ内容のものをWordでも作成して、サークルのGoogle Driveに保存してある。ICPC準備のメモとしては昨年碧黴さんが残したものがあるのだが、まあこんなのなんぼあってもいいからね。今年は変則的なので、来年の役に立つかは知らない(役に立たないでほしい)が、やったことリストは参考になるだろう。ちなみに最初は日記の部分だけ書いて終わりにしようと思っていたが、読み返すと内容が一切まとまっていなかったので慌てて追加した。日記は時系列順なので、相互関係が把握しにくい。僕は把握した状態で書いているので、何も知らない人が読んでわかる文章になっていることは保証できない。

淫夢実況を見ながらラノベを読んだりレポートを書いたりする。

「あドーナッツみっけ!(全22件)」 honeさんのシリーズ - ニコニコ動画

レポートはいくつかある問題のうち2問選んで解く形式のやつだ。全然わからないものとほとんど自明であるように感じられるものの2極化が激しい。配点が違うらしいので、できれば難しい問題を解いておきたいのだが、解けないものはどうしようもない。

メビウスの輪とS1ホモトピー同値であることを示そうとしたが、適当に定義した写像の連続性に納得がいかない。メビウスの輪X=[0,1]x[-1,1](0,y)~(1,-y)で同値関係を定めたときのX/~で定義されているが、商位相に関する感覚というのがほとんどなくて困る。開集合を取ってきて示すのもただただ面倒なのでやりたくない。

こんなふわふわした回答を提出しても殺されないかな?と心配していたが、レポート提出に関する取り決めをよくよく確認すると、問題のカウントの方法を間違えていた。例えば練習問題1.2の(1)から(7)はそれぞれを1問とカウントするらしい。2問より多く解いても最初の2問しか成績に反映されないようなので、レポートに「これとそれを成績に含めてあれは含めないでほしい」といったことを書いておいた。どんなに論理が穴だらけでも成績に含まれなければOK。

ところで、最近ほとんど文章を手書きで書かないため、字が明らかに下手くそになっている。もとから下手くそだったが、さらに悪化している。筆圧の制御ができず、かなり太い線で書いてしまう。ぐしゃっと固まって縮こまった字を書いてしまう。ペン先を紙面からうまく離せず、画がずっと連続してしまっている。

honto.jp

この本がかなり気になっている。

水曜日に注文した古本が届いた。これを待つために起きていた部分もある。

冷凍庫にでも入っていたのかと思うくらい本がヒエヒエで面白かった。この写真を撮るときに左端の本が1度倒れてしまい、その結果近くに置いていた本の帯に折り目がついてしまって悲しい。

午後4時からこどふぉdiv.1があるが、寝る。布団に入ってからしばらくハーメルンでも読もうかと思っていたのに、実際は一瞬で寝入った。