たいやきブログ

mail to tsuyoshi.ogawa[a]gmail.com if you have some question!

TopCoder SRM597 Div2 Level 2 LittleElephantAndString

[解法]
A,Bの文字を後ろから操作していって,Bと同じ並びになっていないAの文字数が答えである.それが答えになる理由は,同じ並びになっている文字は順序を変える必要がなく,変える必要があるのは並びが異なる文字だけだからだ.

A="DCABA"
B="DACBA"

たとえば,A,Bが上記のとき,2文字目のC,4,5文字目のB,Aは文字列Bと同じ並びなので移動する必要がなく,残った1文字目と3文字目のD,Aを移動すればよいことになる.

事件を目撃した

さきほど、恵比寿である事件?を目撃した。

アルファロメオとチャリ(チンピラ風)男がなにやらもめている。チャリ男がアルファロメオにかけより、ペンライトで運転手を照らす。アルファロメオが停車し、窓を開ける。チャリ男が2、3声をかけると、すかさず、車の中に腕を伸ばし、なんとキーを奪う!!!!

自分は、10mくらい離れたところでずっと見ていたのだが、最初、何が起こったのかわからなかった。

キーを奪われたアルファロメオは当然、何もできず、ただただ呆然。。

あまりに気の毒で、運転手に声をかけようとしたが、なんか怖かったのでやめといたw

すると、さきほどのチャリ男が戻ってきた!?
危ない運転するなと運転手を恫喝し、奪ったキーをいくらで買うかと恐喝する。おいおい、なんだよこれ。。結局、お金のやりとりはなくアルファロメオにキーは戻ったが、あのキーの奪い方は紛れもなくプロだった。

あー、こわかった。

本の読み方

僕が本を読むときは、まず、その著者についての経歴を調べる。その書籍自体にも書いてあるが、wikiなどでも調べてみる。なぜ、そんなことをするのかといえば、そのほうが確実に内容が身に入るからだ。

テストから見えてくるグーグルのソフトウェア開発

テストから見えてくるグーグルのソフトウェア開発


例えば、今、ぼくはこの本を読んでいるが、このWhitakerさんについて知るために、ネットを駆使する。YouTube等の動画があるなら、なおよし。その人の雰囲気、声色等の情報は本を読むときに強力な武器になる。

著者について調べてから読書することを、ぜひ、一度、試していただきたい。

Google URL Shortener APIをRubyから利用する

URL Shortener API という短縮URLサービスがある。使い方が非常に簡単なので、簡単に紹介します。
といっても、以下のソースを見てもらえれば分かる通り、非常に単純。API Keyをセットしてポストするだけ。
制限として一日100万リクエストらしいので、そこそこでかいサービスの場合は注意が必要です。

ちなみに、RubyでGetとかPostリクエストする処理はrest-clinet というgemがオススメです。

多段SSHの設定

chef-soloでレシピをつくって、リモートサーバに対して実行するにはknife-soloが使えます。
このとき、対象サーバにsshアクセスできる必要があるのですが、そのサーバがPrivateネットワーク上にある場合、ひと工夫が必要です。
要はsshコマンドひとつで目的サーバまで一発でログインできればいいのですが、一般的には多段SSHとよばれているようで
す。やり方は2つあって、netcatコマンドか、sshの-Wオプションを使えばいけます。
以下に.ssh/configの例をあげておきます。ローカルはMac, 踏み台サーバがPublicクラウド、目的のサーバがPrivateクラウドにある環境で問題なく動作しました。
netcatコマンドを使う場合は-wでtimeout時間を設定するのを忘れないようにしましょう。これがないとsshログアウトしたあとでも、プロセスが残ってしまうようです。

Sublime Text 2にC++プラグインをいれてみた。

SublimeClangというのが良さげなのでいれてみましたが、一点、手こずったとこがあったのでメモ。

Package Control からインストールできるのですが、よくよくみるとv1.6.3だとうまくSublimeClangが入らないようです。

Note that SublimeClang doesn't install correctly with version v1.6.3 of Package Control

実際、Package Controlはv1.6.9.0をいれたらSublimeClangが正常にインストールされました。
これのせいで2時間くらいはまった。。

https://github.com/quarnster/SublimeClang

zshにしてみた

bashで特に困ってなかったのですが、まわりで人気のあるzshにしてみました。
といっても、設定ファイルをどうしていいか迷いますよね。
zsh界隈ではそこそこ有名なoh my zshというのがよさげだったので使ってみました。
https://github.com/robbyrussell/oh-my-zsh

複数のテーマが用意されてるので、好みのものをためしてみるといいと思います。

https://github.com/robbyrussell/oh-my-zsh/wiki/Themes

ちなみに、自分はaf-magicってテーマを使ってます。

~/.zshrcのZSH_THEMEにセットするだけです。