2022/3/22(火)

FatFsを使ったSDカードからのファイル読み出しの実験を進めてみたが、ファイルから32768バイト以上読み出すとエラーを出してしまう。ファイルポインタが符号付16ビットになっている気がする。しかしなぜ?どこで?内部実装読んでみないと分からないかもしれない…


アニメの脚本ができた。音読して長さを概算したところ大体6分くらいの作品になりそうだった。声は合成音声でやっていくとして、BGM作曲とイラストにかかる期間がどれくらいになるか。アニメーションさせるのも地味に時間かかりそうというか初挑戦なのでかかる時間がまったく読めない。


午後、なんか電子部品を整理したりTwitterで電力の情報とかを見ていたら時間が消えた。Vulkanの記事執筆と競プロをやろうと思ってたのに。


今週の胎界主を読んだ。魚成やばすぎる…今一つ比べにくいが、正義と同等以上でもおかしくなさそうなレベルだな。


なんか探していたmemeを見つけた。

standard-realistic-doom


今日やった競プロの問題。

ARC119-C 自力AC。良い感じに段階を追ってやっつけれた。

まず部分問題として、ある(l,r)が指定されたときに判定することを考える。これに大分悩んでしまったが、操作の順番は(ほとんど)考えなくて良いことに気付いたら簡単だった。端っこから見ていって崩していけばいい。i番目の高さ>i+1番目の高さならば崩す前に(i+1, i+2)の高さを十分に上げておく。これを繰り返し、最後につじつまが合えば可能、逆につじつまが合わせられなかったらそれはどうあがいても不可能なパターンだ。これはO(N)で判定できる。

全てのL,Rの組み合わせに対して上記のアルゴリズムを適用すると$O(N^3)$になる。しかし、順を追って崩していく際に「次で最後だったら」を考えれば、Lが同じ場合の計算はまとめられる。こうして$O(N^2)$に改善できる。

そして、上手く立式すると各Lに関する場合の計算を並行して進めることができることが分かり、$O(N)$に改善できた。これはなかなか気持ちよかった。

ちなみに解説を読んだら、ある(l,r)が指定されたときの判定法から全く違った。解説だと偶数番目の要素の和と奇数番目の要素の和が等しいということに帰着していた。すごい。


そこそこ部品の整理が進んできた。種々のIC類とかかさばるモジュール系とかはまだ全く箱に移せてないけど、基本部品として

  • 抵抗
  • インダクタ
  • コンデンサ
  • ダイオード
  • トランジスタ
  • マイコン
  • ロジックIC
  • オペアンプ

は整理がついた。

あとは基本部品として

  • LED
  • 基板
  • 配線部品

あたりを収めたい。あとは

  • 電源IC
  • センサ類
  • 音源IC
  • コネクタ類

を収納すればとりあえずほとんどの工作には困らないだろう。工作を始めるたびに部品袋の中身をぶちまける習慣とはおさらばだ。


なんか夜6~7時ごろに急に眠くなった。いや、このところ午後になった時点でなんかもう意識がぼんやりしているのだが、今日はそのぼんやりの状態でぼんやり作業を続けていたら夕方でそうなった。

昼になるともう集中が切れるんだろう。昼寝をルーティーンに入れるか。でもスッと寝れるわけでもないんだよな。ぼーっとできない。寝れるわけでもないが作業が出来る訳でもない時間の使い方が一番難しい。そこで運動すればいいのか?よく考えたら軽い体操とかストレッチとかはどんどんした方が良さそうだ。外出れないと散歩は出来ないが、室内でも出来ることはままある。

if(作業に集中できる){
  作業する
} else if(ただちに眠れる){
  寝る
} else {
  運動する
}

ここのところ体の調子が悪くて運動も鬼トレもやらなくなっている。何日もずっと無理のある体の使い方をしていれば疲れ果ててしまうだろうが、逆に働かないでいると体も頭も鈍ってしまう。鈍ってしまうと作業することも上手く休むことも難しい。メリハリをつけて休んだり働いたりできると良いのだが。

Categories: