2015-03-01

日記

 昼に起きて昼食して、午後に帰京。夜は家の近くのカレー。あとはプログラミングぽちぽち。なんかgithubのアカウントを以前作ったのはいいんだけど何も公開するコードがなくてさびしい、ということで、まとまった量の競技プログラミングの問題を解いて載っけておけばいいんじゃねということを考えた。ということで時間が確保できるうちにabc全部とかarcのCレベルくらいはやりたい。でも他にやることあるよね。うーん。
 刺激を受けることは多々あれど、本当にやりたいかって言われるとそうでもなく、でもじゃあ本当にやりたいことがあるかって言われると断言できるものなどひとつもない。必要性があってかつ自分にとって苦でないのならばやるべきだし、他に何も言えない。変な気持ちだ。急いてる。焦ってる。

雑記 [programming, shell, clipboard]

・計算量の圧縮について
 愚直に計算したら到底終わらないような問題の計算量の次元をどうやったら落とすことができるか。ここまで数問としか呼べない程度の問題しか解いたことのない経験での雑感では、「便利なデータ構造を使って探索の次元を落とす」「アルゴリズムそのものを賢くする(雑)」「いわゆる枝刈り」「配列として連続している量の和を構成する」「補助的に和やフラグを各要素に持たせる」とかあるんだけど、とにかくまず課題として「どうやって計算量落とすのか」が俎上に載せられたとき、いかに楽をするかというのはかなり経験に依存しているように思う。というよりも慣れないとわからん。でも慣れたらパターンはそこまで多くない気がする。あと幾何やグラフは今までひとつもやったことないかも。まずい。

・シェルからクリップボード
コンテストで書いたものをフォームに貼り付けるときにどうやってクリップボードに突っ込むかという問題だった。
参考はここ:Mac でも Linux でも一発でクリップボードにコピーする zsh の alias - mollifier delta blog

cat hoge.cpp | xsel --clipboard 

でコピーできるんだけど、.zshrcに

alias -g x='| xsel --input --clipboard'

って書いて(linuxだけでなくmacで動くようにするにはif文で違うコマンドをエイリアスにする)、

cat hoge.cpp x

とすればhoge.cppの内容がクリップボードに入る。xひとつで入れるようにしたの忘れそうだからここにメモ。困ったら.zshrc見ればいいだけですけど。
xclip -iでも同じ効果だけど日本語がどうとか書いてある。試してみようとしたらxclip入れてなかった。というよりもいつの間にxselの方を入れていたのか。xselでは日本語もおっけーだったのでこのまま使うと思う。
ちなみにalias -gはグローバルエイリアスというやつで、コマンドラインの先頭だけでなく文中でもエイリアスを適用するようになる。gつけなかったら先頭だけだったのか、知らなかった。今回xとかいう短いエイリアスにしてしまったので、うっかり別の操作で途中にxが単独で出てきてしまうようなものがあれば問題になりそう。様子を見る。

追記(2015-05-16):ディレクトリの名前がxだったりして重複するので今はxxxみたいなエイリアスになっていたり……。

広告を非表示にする