Coding Memorandum

プログラミングに関する備忘録

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

TopCoder SRM 441

今回も前回に引き続き500点問題まで行けました。問題を解く時間も短くなって,だいぶ慣れてきた感があります。

Div2 500点問題は結果を long long で返す問題で,これはもう Challenge では Overflow を狙うしかないと,開始早々3人にChallengeを成功させました。何時ぞやのdouble計算でのOverflowの借りを返せました。
最終ポイントもそこそこのスコアを上げ,Div2全体で12位と健闘しました。Ratingは1209となり,Div1に突入です。まだ時期尚早な気もしますが頑張りたいと思います。

当初の目標では,色々なアルゴリズムを調べて,このブログで要約を書きながら習得していくつもりでしたが,いまだに「アルゴリズム」のカテゴリの記事が 0件の状態です・・・頑張ります!

スポンサーサイト

モバイル環境

モバイル環境を買い揃えてみました。

  • HP Mini 2140 (160GHDD,1366x768)
  • AIR-EDGE GW特別企画 980円/月(2年間)

「モバイル環境が欲しいな」と思っていたところに,今回の「AIR-EDGE 割引企画」が購入の切っ掛けになりました。通信速度が若干不安でしたが,思っていたほど遅くもなく,普通に(メジャーどころの)Webブラウザする分には実用レベルだと感じています。

ノートPCの方は,コーディングするなら縦解像度768以上必須と考えて,この選択となりました。ここしばらくは Aspire Timeline 待ちだったのですが,なかなか発売の発表がなく,痺れを切らして別機種へ移ってしまいました。購入した次の日に発売が発表されるというタイミングの悪さ・・・

他には VAIO type P も候補でしたが,通信カードとの接続の問題で外れました。GWまでは,USB接続の通信カードも特別企画の対象だったのですが,残念ながら今は対象外となっています。

今のところ,特に不満点もなく良い選択だったなあと思っています。しばらくは,TopCoderの練習機として活躍してくれそうです。

next_permutation

STL の next_permutation/prev_permutation は使うことがないだろうなぁと流していたのですが,前回のSRM 440の DIV2 1000点問題では,これを使えと言わんばかりの問題が出されました。

next_permutation()は呼ぶたびに次のような並べ替えを実行してくれます。

a,b,c → a,c,b → b,a,c → b,c,a → c,a,b → c,b,a

その名の示す通り,コンテナ要素の順列を得たいときに使えます。全てのケースを得るためには,最初にソートが必要となります。ちなみに,SRMではvector<string>の順列が必要でした。

Coding Wiki にも追記しました。

TopCoder SRM 440

今回は,わりとすんなりと解ける相性の良い問題でした。
とは言っても1000点問題には手が届きませんが。

500点問題は問題文の解釈ミスで不要な修正をsubmitしてしまい,がっくりしてます。
問題は迷路の探索でしたが,経路は1パスしかないと書いてあるにも関わらず,複数経路を心配して深さ優先探索を幅優先探索へ時間ぎりぎりで変えてしまいました。不要だったと気付いたときには,ショックでした。

250点問題の問題文の枕には「The Incredible Machine」が出てきました。懐かしい名前のゲームです。10数年前のゲームなので知らない人の方が多い気がしますが,かなりの名作です。
今発売しても何も遜色のないゲームだと思うので,リメイク版(または類似品)が出ないかなぁと密かに願ってたりもします。ちなみに内容は,ピタゴラスイッチを作るパズルゲームです。YouTubeにも多くの動画があるようでした。
※例えばこのあたりとか:http://www.youtube.com/watch?v=fv_0IdLT8JY

最近買った本

本屋にふらっと立ち寄って次の3冊買ってみました。

「Software Design」はUbuntu特集とバックナンバーpdf の付録で買ってみました。
自宅PCに andLinux 入れようとHDD増設してたのですが,この本をみてUbuntuでも良いかなと気が変わりました。第2特集のZFSの記事も少し魅力的です。

「日経ビジネス Associe」はブックレビューが特集でしたので手にしました。ぱらっと見ると私の一押し本が数多く載っていましたので,これは趣味があうかもと思い購入しました。しばらくは本選びに困らないで済みそうです。

「ロジカルシンキング入門」は通勤中に読むお手軽本として買ってみました。「~~シンキング」本はけっこう読んでるので,これらの復習を兼ねて読んでみようと思っています。たまに記憶のリフレッシュをしておかないと,どんどん記憶の奥底に追いやられてしまうので。

この種の本では,「日本人は論理的でない」という批判がたいてい出てくるんですよね。この本でも出てきます。こういった文言は読み間違えると「ロジカルシンキングという欧米流の考え方は万能だ(上手く行く)」的な勘違いを生んでしまうので,注意が必要です。
モノ/コトの考え方にはいろいろあるもので,一つの考え方にとらわれることで視野が狭くならないよう心がけています。

次のページ

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。