Programming

ICFPC参加記

チーム名 qnighy メンバー qnighy (計1名) 記録 08/06 ICFPCの登録期限が目前に迫っていたのでEasyChairに登録する。 08/07 EasyChairに登録するだけではだめで、ICFPCという名前のカンファレンスに論文を登録したことにしないといけないことを知り、論文の…

IOI2011メモ

07/20 荷物整理 パソコン…一台あれば十分だが、二台持っていった。 衣服…下着は毎日替える。他は適度に使い回し。 書籍…「計算困難問題に対するアルゴリズム理論」を暇つぶし用に。また、競技中は紙の辞書を使用できるので、念のため持参した。(ただし、普通…

高校生がアルゴリズムで世界に挑んできます

2011年7月22日から29日にかけて、IOI2011 (詳細は後述) がタイで開催されます。 以下の4名が日本代表として参加します。 村井 翔悟 (開成) 原 将己 (筑駒) ←自分です 今西 健介 (八千代松陰) 城下 慎也 (灘) 以下では、IOIに関してひと通り説明したあと、今…

第23回国際情報オリンピック(タイ大会)の日本代表になりました。

IOI概要 国際情報オリンピックは、問題を効率よく解くアルゴリズムに対する洞察力を競うためのプログラミングコンテストであり、数学・生物・化学・物理と並ぶ国際科学オリンピックの一つであると同時に、数あるプログラミングコンテストのうちの1つでもあり…

情報オリンピック合宿中止

まえがき 僕のいる地域は東京の隣にある多摩ニュータウンという地域で、地震の被害については交通機関のマヒ以外は無事でした。震災にあっている人のために出来ることは限られているので、はてな経由で200ポイントだけ寄付したのち、元の生活に戻ろうという…

SELinuxを独学したよ。

こんにちは。今回は誰得感の否めないSELinuxエントリです。しかも独学なのでかなり眉唾物です。SELinuxのポリシーをスクラッチで書くのが目的です。既存のポリシーを運用する話ではないです。環境はDebian squeezeです。 SELinuxとは SELinuxは、Linuxにおい…

優先順位つきキューが壊れたのでセグメントツリーを使ってDijkstraを実装してみました。

ネタを思いついたので実装してみました。As priority_queue broken, we tried implementing Dijkstra using RMQ. — Gistオーダーは変わりません。既にRMQの実装が手元にあるのであれば、こっちの実装方法のほうが楽ということもあるかもしれないとだけ言って…

情報オリンピック参加者の皆さんへ

情報オリンピックに参加した皆さんこんにちは。僕はqnighyです。一応すごい人です。予選で終わってしまった人も、本選で終わってしまった人も、これから合宿に行けるという人もいると思いますが、これ以降も競技プログラミングに精進したい!という人のため…

JOIは銀賞でした

20+20+20+6+20japljの呪詛によって4番がエンバグしました。詳細はあとで調べます。

第10回日本情報オリンピック(JOI)本選

出来事 学校でゼミをやってから代々木に直接行った。 いつもの面子との再会と、きゅうりperyaudo組との遭遇。 Practiceはほとんどやらずにずっと駄弁っていた ちなみに今回はVimではなくEmacsを使うことにした 名刺はPractice中に配りまくった。しかし、40枚…

TopCoderのコンパイラバージョンって判別むずかしい…

Java バージョンを調べるAPI。 public void printVersion() { System.out.println(System.getProperty("java.version")); } 上記を実行して調べた結果、1.5.0_08でした。 Java‚̃o[ƒWƒ‡ƒ“‚ðƒvƒƒOƒ‰ƒ€‚ÅŠm”F‚·‚é(Javaƒ}ƒXƒ^[) C++ プリプロセッサマクロで…

ScalaでimmutableなPriorityQueueを作ってみたよ

みんな大好きScalaですが、immutableなPriorityQueueが標準で無かったので試しに作ってみました。想定バージョンはScala 2.7.7です。Immutable PriorityQueue in Scala — Gist データ構造 今回は優先順位つきキューの実装に、Leftist Heapというヒープを使い…

Coqで独習するならどのページがいい?と聞かれたときのメモ

Download Coq(英語) ダウンロードしなければ何も始まらない。 Download | The Coq Proof Assistant ちなみにLinuxディストリならcoqideパッケージをインストールするのが吉 Coqの入門記事を書く会 そこそこ体系的な入門サイト 2010-09-02 - ひとり勉強会 201…

第10回情報オリンピック(JOI)予選

404 · GitHub 今回はJavaで挑んでみた 1 4つの時間(秒)の和を求めて分秒にしなさい。 やるだけ import java.util.*; import java.io.*; import static java.lang.Math.*; import static java.util.Arrays.*; public class Main { static Scanner sc = new Sc…

AOJ in JOI,PCK 回別リスト

JOI(日本情報オリンピック)予選 第13回 予選 1. 平均点 (Average Score) 2. 投票 (Vote) 3. 超都観光 (Super Metropolis) 4. 部活のスケジュール表 (Schedule) 5. タクシー (Taxis) 6. 小籠包 (Xiao Long Bao) 第12回 予選 1. 宿題 (Homework) 2. 数当てゲー…

今話題のSzl(Sawzall)をUbuntuに突貫インストール

パソコン甲子園の夜の肴にしようと思い準備ネタ元: グーグル、分散処理のためにデザインされた言語「Sawzall」をオープンソースで公開 - Publickey download and extract szl - Szl - A Compiler and Runtime for the Sawzall Language - Google Project Ho…

国際情報オリンピックで金メダルgotしてきました。

報告が遅れましたが、去る8月14日から21日の間、カナダのWaterloo大学で開催された第22回国際情報オリンピック(22nd IOI)に行ってきました。なんか早くも忘れかけているのですが、レポートを書きます。 国際情報オリンピック(IOI)について 国際情報オリンピ…

ここまでのIOI(メモ)#4

Day7 フリータイム Conestoga Mallに連れてってもらった 携帯屋多すぎ hmvが小文字だった H&Mがあったけどだからどうということはなかった ゲーム屋があったがラブプラスは売ってなかった 電気屋に行ってiPadで遊んだ ザコーブのDVDが売ってた。買わなかった…

ここまでのIOI(メモ)#3

Day6 Niagara Falls 言うまでもない有名な滝 前回のexcursionで楽しめなかった(日焼けだけした)であろうsemiexpが「楽しそう」などと言うのでsemiexpの意向に従って行動することにした 朝超早かった 行きのバスは寝たのでしらない 午前中は適当にgdgdした。…

ここまでのIOI(メモ)#2

Day4 Canada's Wonderland、いわゆる遊園地 バスの中でItalyな人々が歌いまくってた。Nel blu, di pinto di bluだけわかったので歌ってやった。 入園するところで荷物チェックされた 突然写真を撮られた。帰りに興味があれば買えということらしい いまいまカ…

ここまでのIOI(メモ)

直前合宿 だいたいみんな成田エクスプレスだった ホテルは良かった IOIの問題の解説が予定されていたが、およそ皆解いていたので暇だった APIO>>>越えられない壁>>>IOI ルール変更の確認とかした 夜更かしした 飛行機 カレーは安定 電源ついてて大勝利 iPad…

プログラミングの国際大会「国際情報オリンピック」に行ってきます。

8月14日から8月21日にかけてカナダのWaterloo大学で開催される「第21回国際情報オリンピック」に日本代表として参加してまいります。 情報オリンピックについて 情報オリンピックは、数学オリンピックや、化学、物理、生物、天文学オリンピックなどと並ぶ、…

子どもにLinuxを使わせるべきでないたった一つの理由

Linux使ったら便利すぎて他のOS使えなくなるディストリによるが

おてがるoprofile

valgrindにあわせて、この前使ったoprofileの記事も書こう。oprofileはIOIでは使えないけど、SuperConの定数倍最適化のために使った。前回と同じように、-gオプションを付けてコンパイル。で、以下のようなシェルスクリプトを用意した。 #!/bin/sh sudo opco…

valgrindとdddの練習

IOI2010の試験環境にはvalgrindとdddとgdbがインストールされているので、valgrindとdddをちょっと使ってみた。こんなソースを用意。 #include <cstdio> #include <vector> using namespace std; int main(int argc, char **argv) { int n = 100; vector<int> v(n); for(int i = 0</int></vector></cstdio>…

std::sortに全順序以外を指定すると死亡

2010-07-14 - メモ用紙の裏Ubuntu(lucid lynx)+GCC4.4.3では以下を実行するとSEGV。 条件を変える(配列ではなくvectorを使う、ソート対象を17より大きくする)と、他の環境でもSEGVするかも。 #include <algorithm> bool cmp(int x, int y) { return true; } int main(in</algorithm>…

遅延評価によるエラトステネスの篩のお話

http://d.hatena.ne.jp/laciryl/20100712#1278918861 のお話。対象となるのは以下の有名なHaskellコード。 primes = sieve [2..] sieve (p:xs) = p : sieve [x | x <- xs, x `mod` p /= 0] これをScalaで書く。 // This Haskell Code in Scala // primes = s…

Hello, kernel world!

DebianとかUbuntuでカーネルモジュールを作ってみた 環境の準備 $ sudo aptitude build-dep linux-image-`uname -r` $ sudo aptitude install linux-headers-`uname -r` まけふぃれ $ mkdir hello_ko $ cd hello_ko $ vim Makefileobj-m := hello.o KDIR := …

SuperCon2010予選通過報告とソース

去年優勝しましたZATORIKUは今年もSuperCon楽しませてもらいます。二連覇しますよ。期末なのでこれ書いたら寝ます。 解法概要 mが奇数のとき0 そうでない場合、[ [0,1],[1,1] ]^nと[ [1,2],[1,3] ]^(m/2)のしかるべき位置の積 行列累乗はバイナリ法を利用 O(…

僕がScalaに惹かれた理由を4つくらい挙げてみた

静的型付け教 const教 クロージャ教 メソッドチェイン教 まとめ: JavaとC++とRubyの影響