メインPCを新調しました

GPT-4による要約 このブログ記事では、著者が2013年に組んだ自身のデスクトップPCを新調した経験について語っています。旧PCは重いアプリの開発時にフリーズする問題が頻発しており、10年間使用されたHaswell CPUのスペック不足が原因と判断されました。旧PC…

VRMをモーション付きでWebブラウザ上で動かしてみる

この記事は whywaita Advent Calendar 2023 12日目の記事です。 前日は id: nersonu さんの「サブスクを整理する」でした。定期的にサブスクの整理をすることは出費を確認する上で大切ですね。 nersonu.hatenablog.com 唐突ですが今回は VRM をブラウザ上で…

Codeforces Problems の不具合対応

概要 Codeforces Problems で特定の問題が大量に表示される不具合が発生しました。 原因はクローラのバグだったので直しました。 はじめに Codeforces Problems は私が開発した Codefores で出題された問題およびその各ユーザーごとの正答状況を確認しやすく…

Linux でマイクの入力音量が勝手に下がる問題

概要 Linux で有線接続のマイクの入力音声のボリュームが勝手に下がる現象が発生しました. これは Zoom や Google Chrome といったクライアントが勝手にデバイスの音量を操作することが原因であることが分かりました。 また Pulse Audio 側でクライアントに…

AtCoder Problems のパクリアプリ CF Problems を作りました

概要 AtCoder Problems を模倣して CF Problems という Web Application を作りました. (2021-07-07追記) 衝突を避けるためにサイト名を Codeforces Problems に改名しました. はじめに AtCoder Problems の Codeforces 版みたいな Web Application があった…

GNOMEで時刻表示形式を変更する

概要 GNOMEはUnixライクなOSで動作するオープンソースのデスクトップ環境です. 現在, Ubuntu や CentOS などの多くのLinuxディストリビューションで標準のデスクトップ環境として採用されています. 今回はGNOMEにおいて時刻表示形式をどのように変更するかを…

転倒数 アルゴリズム

転倒数 (inversion number) とは? 数列 a = {a_0, a_1, a_2 ... a_n-1 } が与えられたとき, i < j かつ a_i > a_j を満たす (i, j) の組の個数を転倒数または反転数という. たとえば a = {3, 1, 5, 4, 2} のとき, i < j かつ a_i > a_j となっている組は, (3…

MSYS2にインストールしたImageMagickが正常に動作しない件について

まずは下記のようなコマンドで imagemagick をインストールする. 私は 32bit 版を選んだ. $ pacman -Ss imagemagick mingw32/mingw-w64-i686-imagemagick 7.0.3.1-1 An image viewing/manipulation program (mingw-w64) mingw64/mingw-w64-x86_64-imagemagic…

逆ポーランド記法による数式処理

逆ポーランド記法とは 逆ポーランド記法(Reverse Polish Notation: RPN)は、演算子をオペランドの後に記述する数式やプログラムの記法の一つです。 例えば、一般的な中間記法で記述された数式 (1+2)*(5+4) は逆ポーランド記法では 1 2 + 5 4 + * と記述され…

USBオーディオ変換ケーブルを買った。

PCに接続したヘッドホンの片側だけ音が聞こえなくなるということがあった。 別のヘッドホンに変えても同じ症状が起きたので、原因はヘッドホンの断線やプラグの酸化などではなくPCの差込口の方であることが分かった。 電子工作の心得があるわけでもないので…

Pythonの組み込み実装のROT13を読む。

アルファベットを任意の文字数ずらした暗号をシーザー暗号という。 シーザー暗号の中で13文字ずらしたものをとくにROT13と呼ぶ。 PythonではこのROT13が言語に組み込み実装として存在しており、thisモジュールはこのROT13でエンコードされている。 >>> print…

場阿忍愚(バーニング)CTF write-up

CTF

はじめに 場阿忍愚(バーニング)CTFに出てた。 1628点とって105位だった。 解いた問題は以下の通り。簡単なのしか解けていない。 芸術と兵法術、諜報術は割愛。 id カテゴリ タイトル ポイント 101 練習 image level 1 10 111 芸術 ワットイズディス? 33 1…

原付免許をとった

アルバイトでも始めようかと思ったのがきっかけだった。 バイトをはじめるにあたって良い機会だから、銀行口座を開設しようと思ってゆうちょ銀行の口座を作ろうとしたら、本人確認書類というものが必要らしく困った。 免許もパスポートも持ってないし、保険…

SECCON 2015 オンライン予選 write-up

はじめに SECCON 2015 オンライン予選にぼっちチームhoge444として出てた。 競技開催期間は2015年12月05日(土) 15:00:00(JST)から24時間。 実質2問しか解けなかった。 Title Genre Points Start SECCON CTF Exercises 50 SECCON WARS 2015 Stegano 100 Conne…

VirtualBox上のUbuntuの画面を自動リサイズできるようにする方法

ターミナルでコマンド入力すれば簡単にできる。 $ sudo apt-get install virtualbox-guest-dkms virtualbox-guest-utils virtualbox-guest-x11 $ sudo reboot Ubuntuに限らずDebian系OS全般は全く同じコマンドで多分問題ない。

x86アセンブリ言語に関するメモ

x86系マイクロプロセッサの持つ主なレジスタ レジスタ名 呼び名 主な機能 EAX アキュムレータ 算術演算の結果を格納 EBX ベースレジスタ メモリアドレスを格納 ECX カウントレジスタ ループ回数をカウント EDX データレジスタ データを格納 ESI ソースインデ…

Pythonで16進文字列をintに変換

16進文字列からint 基数を指定してintにパースすればいい。 >>> s = 'abcdef' >>> print int(s, 16) 11259375 ちなみにインタラクティブシェルなら0xからはじめた16進文字列を入力すれば10進数にしたものを返してくれる。 >>> 0xdeadbeef 3735928559 intから…

簡単なタイピングゲーム

はじめに C言語で簡単なタイピングゲームを作ってみた。 Visual C++でビルドすることを前提としてる。 コード /*typing_cui1.c*/ #include <time.h> #include <conio.h> #include <ctype.h> #include <stdio.h> #include <string.h> #define Qnumber 20 int main(){ int i, stage, miss = 0, alpsum = 0; c</string.h></stdio.h></ctype.h></conio.h></time.h>…

C言語でchar型を返す関数。

はじめに C言語で文字列が与えられたときそれを逆順したものを返す関数をなぜか作りたくなった。 ポインタを使う 文字列を返す関数を作るときはintやdoubleなどと同じように何も考えず 間違え char hoge(char fuga){ //何らかの処理 return fuga; } のように…

尺取法についてのあれこれ

はじめに 尺取法というものを知った。 尺取法の概要 JOI用語集によると、 配列に対して二つのインデックスを持ち、条件に応じて片方を進める操作を繰り返すことで答えを得る方法のこと。尺取虫の動きにちなんで名付けられた。DPの一種ともとれる。またキュー…

数学の粘度のやつ

はじめに 学校でS先生からマーティン・ガードナーの最難問というものを紹介された。問題の概要は次の通り。 ある数の粘度は、すべての桁を掛けて出る答えが1桁になるまでにかかる積算の回数で表す。それぞれの桁の数を掛け算して出るのが2番目の数で、そのま…

CTFの過去問を解いてOllyDbgの使い方を覚える。

はじめに デバッガの使い方が全然わからなかったので、Hack.lu CTF 2013のRoboAuthという問題で練習しました。 この問題は、パスワードを探すというとてもシンプル内容なので練習にはちょうどいいかなと思います。 問題の概要 問題文は以下の通り RoboAuth (…

ファイルの16進ダンプとその逆

はじめに [追記] 以前は「バイナリ,ASCIIの相互変換」というタイトルでしたが,言葉がふさわしくないと思ったのでタイトルを「ファイルの16進ダンプとその逆」に変更し,内容も大幅に改変しました。 言語はCとPython, Windows 8.1にCygwin入れた環境でテストし…

GMP-使い方メモ

はじめに 今回は任意精度演算ライブラリ、The GNU Multiple Precision Arithmetic Library(GMP)の使い方についてメモ書きみたいなことをします。[追記]任意精度演算がしたいなら普通にPythonとか使ったほうが良さそう。 用語 任意精度演算・・・数値の桁の精…