日記0223

今日は日付変わってからはRustプログラミング入門の5章をやっていた。

https://github.com/knzkhuka/rust/tree/main/todo

できたのがこれ。

ローカルでうごかすことは成功したので公開?というかlocalhostじゃないやつで動かしたい。が、眠いので寝た。

昼起きてご飯を食べた後なろうを読んで夜を迎えた(は?)

夜は上記のことをやっていた。調べると、初めてwebアプリを公開するにはherokuがいいらしくて、それでやることにする。

失敗した。終了。

among usをして一日を終えた。人の集まりが悪く、一時間作業が出来ない時間を過ごした。つらい

おれはクソ暇やけどみんなは有をしているんだな..........

日記0222

3時就寝12時起床。

今日は14時から2時間、1dayインターンがあった。 記憶にないが秘密保持に関する契約を一週間前にしたらしいので内容については何も書かないことにする。 これに参加してみて、自分とはマッチしないなあということがわかったので参加してよかったと思う。ただここがマッチしないという事は高専の推薦を使いたいと思う(高専の推薦を使ってエントリーしたら受かった時に絶対にそこにしないといけないらしいのでカス企業に使いたくない)企業がなくなってしまったことを意味する。

自由応募で就職をしないといけないのでスキルが無しかない自分では待遇がよさそうなところに就職するのは厳しいかなあと思いつらい気持ちになった。

AtCoder水しかないのは何もないのと同じなんだなあ かんを

そのあとはUbuntuを消し飛ばしてUbuntuを入れなおしていた。 これは入力の設定が崩壊していて日本語入力が出来ないこと、githubになにかをpushするときにすべて同一のリポジトリにプッシュされてしまうなどのつらい現象が発生しているためである。

両者とも、パソコンに対する高度な知識があれば解決できそうな気がするが、わからないのでリセットしたほうが速いなと思ったためそれをするに至った。

自分がUbuntu機に求めていることはRustの開発環境である。これしかない。 これ以外は全てwin機でできているためである。 win機ではRustの環境だけ破滅している。

環境構築、つらい!!!!

わからんけどVSCodeのrust-analyzer入れてsetting.jsonにeditor.formatOnSave:trueを書いたら自分の求める環境が出来てしまった。こんだけでええんか?わからんが動いてるのでヨシ!

求めていた環境はctrl Sをするたびにフォーマッタが走ってくれること。🏃‍♂️🏃‍♂️

夜はf:id:knzk398:20210222225038p:plainの4章を写経していた。

rust/samplecli at main · knzkhuka/rust · GitHub

無思考で写経しているわけではないので力になっていると信じたい。

こういう本で学習した/写したコードをインターネットで公開するのは大丈夫なんだろうか。

エラーハンドリングというのは競プロではやらないので新鮮な気持ちだった。コーナーケース処理は近いかもしれない? わからんことだらけでつらかった。

これから5章のTodoアプリをやるので早めに日記を書いた。

日記0221

日付が変わる前に寝て、起きたら12時だった。睡眠で人生の半分を失った男。

昼もなんとなく眠くてこたつでなろうを読んだりTwitter鑑賞をしていたが半分ぐらい寝ていた。

17時に完全に目が覚めて昨日の日記兼ABC参加記を書いた。

夜はamong usをした。ぜんぜんimposterが回ってこない。

ARCは解いてないけど問題は眺めた。

A問題はAを全探索してそれと掛けてK以下になる数の約数の積みたいにやる。

B問題は一の位は周期性がありそうだと思った。

C問題は後ろから適切に足し算をしていきそう。

D問題は数え上げだったので考えていない。

本当に競プロをやる気が起きない。

日記0220 ABC192感想

閉寮だった

日付変わってからなんとなく眠く無くてなろうを読んでいたら午前6時になってしまった。

今から寝て昼に起きれなかったら帰省できなくてやばいので起き続けることを決意する。

モニターアームやpcデスクを分解して箱にしまう作業をしていた。めんどくさい これをまた組み立てないといけないのがしんどい

なんでそんなめんどくさいことをしないといけないのかというと今年は全ての荷物を寮から持ち帰らなければいけないためだ。なぜかは知らない。

夜はクッソ疲れてて眠たかったがABCがあったので参加した。

レートが下がったのでカス.......という気持ちになった。

レートが下がると嫌なのでいつもはAから解いて提出してるけど今回はEまで解けたら出そうと思って参加した。

A,B,Cは普通の問題だった。Bを解くまでに5分程度かかっていて衰えを実感した。

D問題は難しくて、適当にサンプルだけ合うやつを書いて解けたことにした。

E問題は自明で、前回ダイクストラをライブラリ化したのでそれを貼って(スニペットからラムダ式の形で展開して)、2,3行いじったら解けた。

5完できたっぽいので提出。D問題がTLEだった。そのときは愚直にやっていたので二分探索にして言語をPythonからC++に変更した。なぜPythonでやったのかというと、オーバーフローしそうで怖かったため。C++多倍長整数を使う方法を調べると

#include <boost/multiprecision/cpp_int.hpp>
using bigint = boost::multiprecision::cpp_int;

これだけで済んだのでこれからはこれもライブラリに追加しとこうと思った。

D問題はそれでも解けなかった。TLEはなくなってWAが10何けーすか存在した。よく考えると誤読していてnの数を数えていた。1のとき無限にならないか??と思って問題文をにらむと値の種類数と書いてあるのでlen(x)==1のときがコーナーケースだとわかる。その時の処理をcout<<1<<endl;と書いて提出。WAが6ke-suまで減った。コンテスト中はここまでしかわからず。

解説を読むと、len(x)==1のときにmと比較して、1か0か判定しないといけない。アホすぎ

F問題はkを決め打ちするとsumもxもkで割った余りでいいなと思って部分和DPをする。dp[i][j][S] := i番目まで見てj個使って和がSになる。

サンプルはあったがサンプル以外は合わなかった。

ねむかったので23時過ぎに寝た。

日記0219

4時ぐらいに寝れね絵と思ってなろうを読み始めた。

6時ぐらいに寝落ちしあと思う。

昼に起きた。

午前は2教科テスト返しがあって両方とも出席していない。片方はテストを自己採点したらしい。英語Aなんだけど普通に落としそうで自己採点しなかったらどういう扱いになるのかわからないので怖い。単位落としても留年レベルに落ちはしないのでセーフ。

昼はAtCoder Career Design DAYという合同企業説明会に参加した。

40分×8企業で休憩なしのつらい時間だった。なろうを読みながら聞いていたのであまり内容は思い出せない。待遇がよさそうな企業に行くには開発経験、成果物が必要そうということがわかった。競プロ、具体的にはAtCoder水だけで採用してくれる社が必要。

業務内容も今まで何も興味を持てたことがない。

働かずに暮らしたいところから働いてもいいかなというところまで来たがその先、こういう仕事をしたいという段階にはたどり着けていないのがダメなのかもしれない。

午後も2教科あった。情報理論は途中式、導出過程を書いていないという理由でアホほど減点されていた。信じられん。

信号処理、情報工学実験を兼ねて担当している先生は過労死してしまうかもしれん。大量の学生のレポートの採点で。

 

夜はなんとなく眠い感じだったので寝ようとした。寝たかわからないが0時ぐらいに起きた。

日記0218

えー今日も特に何もなかった

 

午後は面接があった。

テスト返しもあったのでそっちは休んだが、テストの結果は知りたいので先生に今日は就職活動で休むのでテストの結果を教えてくださいというメッセージを送った。後日送りますという回答を得た。ワンチャン100点かなあと思うので、知りたい。

 

今までに就活で面接は一回しかしたことがなくてそこでは面接のテンプレみたいな質問も聞かれなかったしかなり行きたい度が高かったので会社についてもかなり調べたので乗り切れた(しかし落ちた)が、今回の企業は面接時にスーツ着用を求めてきたし自分の働きたい社風ではないかなと感じたためかなり適当に対応してしまった。

実際の面接では自分の長所や短所、志望動機、就職したときに関わりたいプロダクトを聞かれたが、あまり考えていなかったのでかなり曖昧な、グダグダした受け答えをしてしまったので落ちたかなあと思う。競プロポテンシャル採用してくれ

 

一昨日ぐらいにやった面接前のwebテストの結果がふるわなかったので自分が解けなかったという事はみんなも解けないはずだと思ってそれについて質問してみたらほぼほぼ全完できるらしくて、泣いてしまった

 

午後はウミガメのスープ人狼やamong usをした。楽しかった。

ウミガメのスープむずかしすぎる

日記0217

今日はテスト返しだった。

ドイツ語は36/100でレポートを出してくださいと言われた。

現代社会と法は評定8を得た。

 

帰ってからは

実践Rustプログラミング入門 初田 直也 https://www.amazon.co.jp/dp/4798061700/ref=cm_sw_r_tw_dp_PBRZAEQN0079E2XGPWQD?_encoding=UTF8&psc=1 @amazonJPより 

を読んでいた。

 

C++でいう型テンプレートみたいなのはジェネリクスといい、

https://play.rust-lang.org/?version=stable&mode=debug&edition=2018&gist=302c9818f3cb3a753809cae3c52f661c

のように実装できる。

ここでf<T: hogehoge>のhogehogeの部分はtraitを指定する。

このtraitがかなり良い感じの機能で複数のstructでこのtraitを実装するみたいなことが出来る。これは、うまく説明できていない自信がある。

代数学的構造で加算単位元とか乗算単位元を実装している必要があるだとかに使えそう。

100から160ページぐらいまで読んだけど非同期処理とかは使う用途があまりわからず理解できたとはいいがたい。