Google Code Jam 2009
よく覚えてないけど去年えらいひどい成績だったので、今年はちゃんとしようと思ったんですが、結局解いたのは会社で昼休みに解いた A だけでした。まだ眠気引きずってるし。
スコアとかコードはたぶんこの辺。6168 位です。下層市民ですね。
http://code.google.com/codejam/contest/scoreboard?c=90101#sp=6161
kinaba さんが A 問題を JS で解いたと言ってたので追従して JS でやりました。アップされてるコードが HTML。これはひどい。問題をペーストしてボタン押すだけで解答が出てきます。素晴らしいですね。こんなプログラムではウォームアップにも何にもなりませんね。
高専カンファレンス in 東北
はい、高専カンファレンス in 東北行ってきました。これで 8 月はもう 3 回目の関東行き(いわきは関東ではないけど、通過ってことで)。月間記録更新ですが、これ以上は毎週ってことになるし、さすがにないでしょうね。
もともとは急行能登で向かうつもりだったので ATND の予定では最速上野入りを宣言してたのですが、ふたを開けてみれば id:earth2001y と一緒に最遅上野入りでした。正確には、上野入りは最遅ではなかったんですが、集合がラストでした。ルートとしてはこんな感じ。
- JR急行きたぐに
- 2:19 福井(福井) 発
- 5:56 直江津 着
- 北越急行ほくほく線快速
- 6:00 直江津 発
- 7:07 越後湯沢 着
- JR新幹線Maxとき302号
- 7:21 越後湯沢 発
- 8:38 上野 着
なわけで6時間ですね。長いような短いような。きたぐにの電気が消えない&自由席全席ボックスなのは想定外でした。
福島高専は去年の高専プロコンでいわき明星行くときに通過したので、バス停の位置なども含めて、場所は記憶にしっかり残ってました。
が、中に入ったのは今回が初めてで、なんというか、毎回色々な高専に行って思うことですが、作りが高専によってまちまちですね。福島高専は、一体感がありました。茨城って棟、棟、棟って感じなんですが、そうじゃなくて、ひとつ、みたいな。もっと色々な高専を見てみたいものです。
発表したり
デモやったり
実験したり
こんなカンファレンスで、とてもよかったです。回を重ねたこともあってか、非常にスムーズな進行で、マンネリかと思いきやサプライズもありで。
,. -‐'''''""¨¨¨ヽ (.___,,,... -ァァフ| あ…ありのまま 今 起こった事を話すぜ! |i i| }! }} //| |l、{ j} /,,ィ//| 『おれはLTセッション前にトイレに向かってたと思ったら i|:!ヾ、_ノ/ u {:}//ヘ いつのまにかLANケーブルで髪を結った巫女が目の前にいた』 |リ u' } ,ノ _,!V,ハ | /´fト、_{ル{,ィ'eラ , タ人 な… 何を言ってるのか わからねーと思うが /' ヾ|宀| {´,)⌒`/ |<ヽトiゝ おれも何がいたのかわからなかった… ,゙ / )ヽ iLレ u' | | ヾlトハ〉 |/_/ ハ !ニ⊇ '/:} V:::::ヽ 頭がどうにかなりそうだった… // 二二二7'T'' /u' __ /:::::::/`ヽ /'´r -―一ァ‐゙T´ '"´ /::::/-‐ \ ニーソだとかカッパだとか / // 广¨´ /' /:::::/´ ̄`ヽ ⌒ヽ そんなチャチなもんじゃあ 断じてねえ ノ ' / ノ:::::`ー-、___/:::::// ヽ } _/`丶 /:::::::::::::::::::::::::: ̄`ー-{:::... イ もっと恐ろしいものの片鱗を味わったぜ…
司会だったこともあって事前には聞いてたんですが、秀逸でした。関係各位に感謝。だけど kawataso が言うとおり制服も良かったんだぜ。あとで写真を見返してみたら、なぜか後ろからのショットばかりで、なにやってんだという感じでしたね。
あ、いちお掲載 OK はもらってますので。その他写真はここにつっこんであります。そろそろプロアカウントが必要なふいんき。
色々発表がありましたが、琴線に触れたのはやはり高専プロコン関連のコルンさんの発表。話の内容が上野で id:earth2001y と話してたこととほとんど同じで、とても共感しました。プロコン OB、特に競技をやっていた方は、何らかの形で今後も関わっていきたいと考えてたりすることがあるわけですが、それを、本当に、競技練習場という形で、実践している。素晴らしいです。自分はと言えば、一参加者としてふらっと会場に行ってみるぐらいですね。今年の木更津開催も 3 年連続で参加予定です。
ちょっと聞いた現役視点での感想。石川高専の競技選手と話す機会があったのですが、「練習場が大阪府立無双でなんだかなー」って話を聞きました。本番で打ちのめされるのもショックですが、本番の前から勝てる見込みがなくて萎縮しちゃうケースもあるようです。どっちが良いともいえない、ということは無く、当然練習場があるほうが良いのですが、こういうこともあるんだなぁと。
次回の高専カンファレンス、高専カンファレンス 2009秋 in 東京には、残念ながら顔を出すことができませんが、その後予定されてる長野あたりには行こうかと思ってます。なんか東京に限って参加しないという位置づけになりつつありますが、それはそれで。地方楽しいし。
XNA Creators Club のアイコンがキモすぎた
XNA のゲームカタログを見ていて、そういやアカウントとか作れるんだっけかと思って右上の「サインイン」を押して普段の MSN メッセのアカウント情報を入力して登録画面に行ってみたんですが、そこで出てきたアイコン選択画面を見てなんかがっくりきました。こんな感じ。
なんというか、もう、センスが。左上のがデフォルトで選ばれてるんですが、もはやグロいレベルだし。他のやつも目の下のくまみたいなのが邪悪感をかもし出してますね。忍者、リボン、爆弾、迷彩、ヘッドホン(下の)あたりが無難でしょうか。
そんなわけでアカウントは作りましたが、特に何をするといったわけでもありません。
docomo ばっかり槍玉に上がってかわいそうなこと
QtのGitリポジトリが公開されてた
Windows、C++、.NET不使用という条件の上で最有力のライブラリQtですが、いつのまにかGitリポジトリが公開されてました。今まで分散リポジトリのVCSについては「そのうちMercurialやろうかなー」程度にしか考えてなかったんですが、必要性が出てきてしまったので、先にGitに手をつけることになりました。
手元の環境はCentOS 5.3。Gitは標準のYumリポジトリに入ってないので、まずRPMforgeを登録するところから始めます(参考)
$ wget http://apt.sw.be/redhat/el5/en/i386/RPMS.dag/rpmforge-release-0.3.6-1.el5.rf.i386.rpm --17:29:06-- http://apt.sw.be/redhat/el5/en/i386/RPMS.dag/rpmforge-release-0.3.6-1.el5.rf.i386.rpm Resolving apt.sw.be... 193.1.193.67 Connecting to apt.sw.be|193.1.193.67|:80... connected. HTTP request sent, awaiting response... 200 OK Length: 16698 (16K) [application/x-redhat-package-manager] Saving to: `rpmforge-release-0.3.6-1.el5.rf.i386.rpm' 100%[=================================================================================>] 16,698 18.9K/s in 0.9s 17:29:08 (18.9 KB/s) - `rpmforge-release-0.3.6-1.el5.rf.i386.rpm' saved [16698/16698] $ sudo rpm --import http://dag.wieers.com/rpm/packages/RPM-GPG-KEY.dag.txt $ rpm -K rpmforge-release-0.3.6-1.el5.rf.i386.rpm rpmforge-release-0.3.6-1.el5.rf.i386.rpm: (sha1) dsa sha1 md5 gpg OK $ sudo rpm -i rpmforge-release-0.3.6-1.el5.rf.i386.rpm
この後、上のドキュメントにあるように、リポジトリのpriorityを適宜設定しておきます。
次にGitをインストールします。といってもこれだけですが。
$ sudo yum install git Loaded plugins: fastestmirror, priorities Loading mirror speeds from cached hostfile * rpmforge: apt.sw.be * base: www.ftp.ne.jp * updates: www.ftp.ne.jp * addons: www.ftp.ne.jp * extras: www.ftp.ne.jp 369 packages excluded due to repository priority protections Setting up Install Process Parsing package install arguments Resolving Dependencies --> Running transaction check ---> Package git.i386 0:1.5.2.1-1.el5.rf set to be updated --> Processing Dependency: perl(LWP::UserAgent) for package: git --> Processing Dependency: perl(SVN::Ra) for package: git --> Processing Dependency: rcs for package: git --> Processing Dependency: perl(SVN::Core) for package: git --> Processing Dependency: perl(DBI) for package: git --> Processing Dependency: perl(Git) for package: git --> Processing Dependency: perl(SVN::Delta) for package: git --> Running transaction check ---> Package perl-Git.i386 0:1.5.2.1-1.el5.rf set to be updated --> Processing Dependency: perl(Error) for package: perl-Git ---> Package perl-libwww-perl.noarch 0:5.805-1.1.1 set to be updated --> Processing Dependency: perl-HTML-Parser >= 3.33 for package: perl-libwww-perl --> Processing Dependency: perl(HTML::Entities) for package: perl-libwww-perl --> Processing Dependency: perl(Compress::Zlib) for package: perl-libwww-perl ---> Package subversion-perl.i386 0:1.4.2-4.el5 set to be updated ---> Package perl-DBI.i386 0:1.52-2.el5 set to be updated ---> Package rcs.i386 0:5.7-30.1 set to be updated --> Running transaction check ---> Package perl-HTML-Parser.i386 0:3.55-1.fc6 set to be updated --> Processing Dependency: perl-HTML-Tagset >= 3.03 for package: perl-HTML-Parser --> Processing Dependency: perl(HTML::Tagset) for package: perl-HTML-Parser ---> Package perl-Error.noarch 0:0.17015-1.el5.rf set to be updated ---> Package perl-Compress-Zlib.i386 0:1.42-1.fc6 set to be updated --> Running transaction check ---> Package perl-HTML-Tagset.noarch 0:3.10-2.1.1 set to be updated --> Finished Dependency Resolution Dependencies Resolved ========================================================================================================================== Package Arch Version Repository Size ========================================================================================================================== Installing: git i386 1.5.2.1-1.el5.rf rpmforge 27 M Installing for dependencies: perl-Compress-Zlib i386 1.42-1.fc6 base 52 k perl-DBI i386 1.52-2.el5 base 600 k perl-Error noarch 0.17015-1.el5.rf rpmforge 27 k perl-Git i386 1.5.2.1-1.el5.rf rpmforge 18 k perl-HTML-Parser i386 3.55-1.fc6 base 92 k perl-HTML-Tagset noarch 3.10-2.1.1 base 15 k perl-libwww-perl noarch 5.805-1.1.1 base 376 k rcs i386 5.7-30.1 base 332 k subversion-perl i386 1.4.2-4.el5 base 753 k Transaction Summary ========================================================================================================================== Install 10 Package(s) Update 0 Package(s) Remove 0 Package(s) Total download size: 29 M Is this ok [y/N]: y Downloading Packages: (1/10): perl-HTML-Tagset-3.10-2.1.1.noarch.rpm | 15 kB 00:00 (2/10): perl-Git-1.5.2.1-1.el5.rf.i386.rpm | 18 kB 00:00 (3/10): perl-Error-0.17015-1.el5.rf.noarch.rpm | 27 kB 00:00 (4/10): perl-Compress-Zlib-1.42-1.fc6.i386.rpm | 52 kB 00:00 (5/10): perl-HTML-Parser-3.55-1.fc6.i386.rpm | 92 kB 00:00 (6/10): rcs-5.7-30.1.i386.rpm | 332 kB 00:00 (7/10): perl-libwww-perl-5.805-1.1.1.noarch.rpm | 376 kB 00:00 (8/10): perl-DBI-1.52-2.el5.i386.rpm | 600 kB 00:01 (9/10): subversion-perl-1.4.2-4.el5.i386.rpm | 753 kB 00:01 (10/10): git-1.5.2.1-1.el5.rf.i386.rpm | 27 MB 00:57 -------------------------------------------------------------------------------------------------------------------------- Total 455 kB/s | 29 MB 01:05 Running rpm_check_debug Running Transaction Test Finished Transaction Test Transaction Test Succeeded Running Transaction Installing : subversion-perl [ 1/10] Installing : rcs [ 2/10] Installing : perl-DBI [ 3/10] Installing : perl-Compress-Zlib [ 4/10] Installing : perl-Error [ 5/10] Installing : perl-HTML-Tagset [ 6/10] Installing : perl-HTML-Parser [ 7/10] Installing : perl-libwww-perl [ 8/10] Installing : perl-Git [ 9/10] Installing : git [10/10] Installed: git.i386 0:1.5.2.1-1.el5.rf Dependency Installed: perl-Compress-Zlib.i386 0:1.42-1.fc6 perl-DBI.i386 0:1.52-2.el5 perl-Error.noarch 0:0.17015-1.el5.rf perl-Git.i386 0:1.5.2.1-1.el5.rf perl-HTML-Parser.i386 0:3.55-1.fc6 perl-HTML-Tagset.noarch 0:3.10-2.1.1 perl-libwww-perl.noarch 0:5.805-1.1.1 rcs.i386 0:5.7-30.1 subversion-perl.i386 0:1.4.2-4.el5 Complete!
Perlの依存ライブラリと共にGitがインストールされます。そして本来の目的、Qtをcloneします。
$ git clone git://gitorious.org/qt/qt.git Initialized empty Git repository in /home/rch850/qt-git/qt/.git/ remote: Counting objects: 55370, done. remote: Compressing objects: 100% (27771/27771), done. Indexing 55370 objects... remote: Total 55370 (delta 30302), reused 50040 (delta 25537) 100% (55370/55370) done Resolving 30302 deltas... 100% (30302/30302) done Checking 30996 files out... 100% (30996/30996) done
これでqtディレクトリが作成され、その中にソースコード一式が入ります。ちなみに最後のgit cloneだけで30分以上かかりました。さすがにdu -hsして671MBもあるようなソースだと時間かかりますね。とりあえず今日はここまで。
==余談==
最初に以下のようなことをやってみたのですが、
# cd /etc/yum.repos.d # wget http://kernel.org/pub/software/scm/git/RPMS/git.repo # yum install git
依存関係でエラーが出たのでRPMforgeを使う運びとなりました。
そういえば身近にあった
お許しください!と言えばボルガ博士ですが、福井にはボルガライスなんてものがあります。チャー研ネタ自体はだいぶ前から知ってましたが、昨日下の記事にあるジャムハウスでボルガライス食べてる最中にになってふと「あ!これボルガって名前付いてる!」って気づいたので(今更)、紹介しておきます。
サイト内の写真にあるとおり、これぞB級!なメニューです。オプションで、大盛りにしたり、中身のご飯をピラフにしたりできます。標準はケチャップライスで、それなりの量があります。大盛りにすると結構おなかいっぱいに。
ボルガライスだけでもネタとしては十分なんですが、ジャムハウスの魅力はそれだけではありません。メニューを1ページめくると出てくるのが「グランドキャニオン」。器はボルガライスと同じなんですが、周りが大量のカレー。中身は標準でピラフになってます。かわりにカツがオプションです。
交通の便が悪いので観光で来た人が行くのは難しいかもしれませんが、機会があれば是非。店内の雰囲気も独特で面白いです。
高専カンファレンス in 九州行ってきました押忍!押忍!押忍!!
人生初九州ということで、高専カンファレンス in 九州に行ってきました。場所は久留米高専。前の福井では開催する側でしたが、今回はお客さんで。
新大阪から博多まではのぞみ7号(N700系)のグリーン席。
なんというブルジョワ!
というわけではなく、新幹線・特急\乗り放題/!な西日本パスを使っただけです。2日間でグリーン席4回も乗れて16000円!安すぎる!しかし山陽新幹線はトンネルだらけで、せっかくの芋場がほとんど使い物になりませんでした。あと新下関から小倉がトンネルだと知らなかったので、九州上陸というかなんというか。
カンファレンス、発表を聞いて思ったこといくつか。
まともなプログラミング系のサークルが無かったって高専はうちぐらいだと思ってたんですが、色々見てると他にもあるみたいですね。大分もそんな感じでしたし。「うちにはどうせサークル無いし、個人でひっそりやろう」なんて考えるよりは、同志を募るのが最近のやり方なんでしょうね。理解の教員も増えてるでしょうし(何
プロコンネタは非常によかったです。高専となると、とかく高専プロコン、高専プロコン、たまにパソコン甲子園ですが、その他の色々なフィールドを示してくれたのがよかった。「高専プロコンの競技部門はなってない。あれは真のプログラミング能力を競う大会ではない」って言う人もいますが、残念ですが高専プロコンはそういう場ではないんですよね。そんな事言ってるやつらはICPC行ってボコボコにされて来い!ってことを、発表者のwosugiさんと話してました。
いくつかの発表の中で、高専間でサークルが連携できたらいいなという話がありました。北陸では、福井高専のProfoと石川高専のI研が、合宿を開催するなど、とても仲良くやっています。まずは、やってみることじゃないですかね。
あとは最後に、いい加減ちゃんとしたスライド作成ソフトないとつらいなぁ、と。パワポ2000しか持ってないので、今回はOOoに手をつけてみましたが、どうも作業効率悪かったです。
次は8月下旬に福島高専での開催。去年の高専プロコンに続いて2年連続でいわきになりそうです。
そうそう、タイトルについて。二次会終わって、送迎バスに乗ろうとしていたときのこと。久留米クラスタが「ここは久留米高専っぽくやっときますか」と言うので、よく分からないけどやっとけやっとけということになったんですが、そこで始まったのがコレ。
- 腰を低く構え、左の拳を突き出し、右の拳は腰に。
- 音頭を取る人が「高専健児ー元気あるかー!!」
- 全員で右拳を三度前に突き出しながら「押忍!押忍!押忍!」
なんか最後の最後でものすごいインパクトでした。久留米すごい久留米