読者です 読者をやめる 読者になる 読者になる

ブログをはてなブログに移行した ほか

しばしさくらVPSのWordPressでブログを書いていたが、やはり使いづらく、いつのまにかブログに成果を書く習慣自体が消滅しつつあったので、これはまずいと思い、約1年を期にはてなブログに移行した。はてなブログが改善されてきていると聞いたのも理由の1…

「言語実装パターン」を読んだ

ブログの更新が例によってかなり久々になってしまった。皆様お元気ですか。暑すぎてバテてないですか。 近況といえば、ICPCの国内予選は(僕が微妙にトチるも)どうにか通過してAsia Regionalに行ける事が決まって、かと思えばすぐ大学の期末試験があった。…

「すごいHaskellたのしく学ぼう!」を読んだ

すごいHaskellたのしく学ぼう! この本もまた、受験の6月に「勉強したくない勉強したくない」って泣きながら気晴らしで購入した本で、ちょうど一年前の、梅雨でジトジトの今頃、中をぱらぱらめくってみたのを思い出す。最近読んでる本、そんなような本ばっ…

「リーダブルコード」を読んだ

ご無沙汰してます。大学の勉強とICPCに向けてそこそこがんばってます。 リーダブルコード ―より良いコードを書くためのシンプルで実践的なテクニック (Theory in practice) 「リーダブルコード」は、受験の秋ごろに「勉強したくない!勉強したくない!」と泣…

「C++のためのAPIデザイン」と「Effective C++」を読んだ

C++のためのAPIデザイン Effective C++ 普通、逆だと思うが、実際にこの順番で読んだ。(購入順序は逆) まず、C++のためのAPIデザインだが、実際分厚いものの、個々のトピックについてしつこすぎるという事もなく、Essential C++を読んだ後の人が具体的なコ…

Essential C++を読んだ

基本的には知っている事だったが、競技プログラミングでしかC++は触れて来なかったので(←これ闇の軍団対策で書いたけど冷静に記憶たぐるとそこそこ嘘ですね…)、はじめて知ることもそこそこあって、冷や汗という感じだった。 随分と読むのに時間がかかるよう…

今月の頭ぐらいから作っていた、学習進捗度管理サイトをとりあえず公開した

が、なんかもう既に消し去りたい過去みたいになっている。 Schedulearn とくに、解説動画を撮影したあたりからそんな感じがひしひしと ともかく、自分がさくらVPSを契約した理由というのはこれなんですが… いやね、もうちょっといろいろとマシな物を作ろうと…

近況報告

まともな受験の戦略なんて物はなかったし、最終目標も揺れまくっていたので、これが成功だったのか失敗だったのかは今のところ不明だ。しかし確固たる事実として、受験が終わった。 というわけで、本業のプログラミングに復帰すべく、手始めにさくらVPSを借…

三日間で、Ruby未経験から、Railsで一定の物を作れるようになる方法

最近、短期間でWebアプリケーションを作らなければならないという状況に直面するという事があった。 どのような環境で動かすのかという事を考えた結果、後々の再利用も考えて、Herokuで普通にRailsアプリケーションを動かすのが一番良い選択であると思い、そ…

第11回日本情報オリンピック本選参加記

結果は220点でBランクでした。問1でバグ死というありえない落ち方をして、正直現実の出来事として捉えられていませんが、 これからゆっくりと現実と向き合っていこうと思います(大袈裟)。 初日 Practice前 自作のきゅうり帽(右写真)を持参していった。かぶっ…

第11回情オリ本選対策14日目(あと使えるのは1日!)

明日が使えるという意見と使えないという意見があります。昨日は体調崩したりしていた。POJ 3254、よく考えたら一昨日考えた解法間違ってたので、改めて書く。サンプルケースも通るのに何故かWA。何故だーーーーー 以下誤ソース。誰かデバッグしてー!(懇願) …

第11回情オリ本選対策13日目(あと使えるのは2日!)

今日やるつもりの物 アリ本のP.253のビットDP5問 etc昨日書いた物共 17:05-20:35 POJ 2441、メモ化→DPの書き換えミスはどこか分かったんだけど、それで送ったらWAしたのでやる気を失なった。これで答えあわないというのは理由が分からないし、日本人で解いて…

第11回情オリ本選対策12日目(あと使えるのは3日!)

今日やるつもりの物 アリ本P126の少し考察を要するDP5問、P.253のビットDP5問 AOJ0550 Dividing Snacksをどうにか他人の見てでも JOI Flagもどうにか POJ3280 Cheapest Palindromeもどうにか AOJ0232 Life Gameもどうにか AOJ1056 Ben Tohもどうにか解説みて…

第11回情オリ本選対策11日目(あと使えるのは4日!)

なんか昼間はエンジンがかからなくて、「やべえいろんな物を放棄して時間作ってるのにダラダラしてるとか俺マズい」みたいな気分に夜なってからそこそこ解いた。 といっても簡単なのばっかりですが… POJ 2385 Apple Catching 最初の再帰関数を立てて、脳内ト…

第11回情オリ本選対策10日目(あと使えるのは5日!)

昨日も結局何もせずに寝てしまって、今日は時間はかなり取って気分的にはいろいろしたつもりなんだけど、結果みてみると全然問題解いてない。 簡単に解けて能力を上げた気分になれる問題が一通り尽きてしまった事が一因かと思われる。 本選の問題、年々難化…

第11回情オリ本選対策9日目(あと使えるのは7日!)

昨日はなんかあまりに過去問が解けなくて萎えて無為に過ごしてしまった。 今日もあまり何かした訳ではない。Kruskalをはじめて使った。なんだこれむっちゃ簡単やん。なんで今まで知らんかったんやろ…明日以降は本当にDPの練習と、過去問の問1-3のみをやって…

第11回情オリ本選対策7日目(あと使えるのは11日!)

イマイチ早起きには失敗した上に眠いががんばる。 9:34-13:00 疲れた。昨日ほどやる気がでない。自分のこのやる気に波がすごくあるのどうにかならないですかね… AOJ 0223 Stray Twins、REの原因がわからんので放置。 AOJ 0122 Summer of Phyonkichi #include <cstdio></cstdio>…

第11回情オリ本選対策6日目(あと使えるのは12日!)

アリ本2版買った。きゅうりの頻出典型アルゴリズムまとめを上から解いた事ないやつ埋めていった。 正直実力足りなすぎていて、普通に合宿落ちそうでつらい。明日から三日間自由に使える時間があるので、そこで過去問にある程度入れないと爆死する事は確定的…

第11回情オリ本選対策5日目

なんとなく開始前にダラダラしてしまった。だって眠いしこのカフェ異常に暑いんだもん。あとラーメンで舌火傷したし。今日の目標 DPの巡回セールスマン問題を理解 あとはひたすら問題を解く 18:00-21:35 実はSegment Tree書ける気がしないというかどうやれば…

第11回情オリ本選対策4日目

今日の目標 Segment Tree / BIT (未)DPの巡回セールスマン読む (未,0問)DP練習解けるだけ解く(>=4) 食物連鎖解く 19:42-22:03 Craneも理解する程頭回ってないしこれ解くのにSegment Tree必要ですかねとか思ってしまうのでパス バブルソートの交換回数もパス …

第11回情オリ本選対策3日目

アリ本の個数制限部分和の問題よく分からん。 最長部分増加列覚えた。が、O(n log n)解法は直感的理解はできていないので、応用させられると死ぬ可能性がある。 分割数と重複組合せの話は理解するのが面倒そうなので飛ばした。 Union-Find多分書けるけど一度…

第11回情オリ本選対策2日目

もっと効果的にやらないとやばい気がする。 ともかくDPとグラフと思ってTC Practiceに手をつける。GogoXMarisaKirisimaが分からなかった。解説読んでもやっぱり分からなかった。 BricksNも解けそうで解けなかった。解けそうでというのは全然おしい感じではな…

第11回情オリ本選対策1日目

アリ本の2 - 5グラフのあたりをざらっと読んで、今まで避けていたベルマンフォード、ワーシャルフロイド、プリム、クラスカルを一応理解した。 2011年の過去問に手をつけてみて、あまりに解けなくて絶望。なんかもう根本的に思考力とかが足りていない感じも…

第11回情オリ本選対策0日目

そろそろいい加減手をつけようと思う。以降原則毎日日記形式で記録をつけるつもり。本選までにやるべき事 アリ本で以下の知識の穴を埋めるべく該当の章をやる セグメント木とかBITとか グラフ(プリム法とかの章と、グラフマスターへの道のほうの強連結成分分…

新年の目標

新年あけましておめでとうございます!本年もよろしくお願いします!今年一年こそは勝利の一年とするべく、これまでの腑抜けた根性は全て捨てて努力一心に過ごすつもりです!本年の目標 JOI本選Aランク 受験で勝利(理想的にはほげほげ合格)すべく 数学の偏差…

JOI予選過去問 実はまだ解けない問題

通ったから言える実は僕解けません問題。 第11回 6. ジグザグ数 日本情報オリンピック(JOI) 第11回予選 自分の提出した解答 - ペリャウドのプログラミングとか これも参照。 第10回 4. 1年生 一度みながら通した事あるんですけど、実はこのDP納得できていな…

日本情報オリンピック(JOI) 第11回 予選突破しました

Aランク、104点でした。JOI 2011-2012 予選 問題・採点用入力4のほうが5より難易度低いというのが、僕の感覚的にはよく分からない。みんな4で折れて5に進まないだけとかなのだろうか。ところで最近C++のコンストラクタの初期化リストという物をはじめて知っ…

日本情報オリンピック(JOI) 第11回予選 自分の提出した解答

kyuridenamida解と比較したので多分答えられた部分についてはあってる。JOI 2011-2012 予選 問題・採点用入力全体の感想としては、1-3は去年より一段ひねってあるというか、面倒な感じで、4は去年の4番のDPよりは少し難化していると思う。 5が去年の比でなく…

あと埋めたいアルゴリズム知識

何もしてこなかった訳じゃないので、一応「考えれば分かる」問題への耐性はある程度ついたと信じたいんですよ… DP SegTree Dijkstra以外のグラフアルゴリズム UF

やたーDiceをOCamlで書いたよー

長年JOIer達の間で「どうやればきれいに解けるのか」「無理」という会話がなされてきたDiceをOCamlで解いた。よっしゃ結構きれいや!と思ってドヤ顔をしつつ他のC++のソースとか参照してたら別にきれいでもない上にこっちのほうが長かったので死にたい。 でも…

第7回JOI予選問題 2週目

全完までに2時間18分。問6のデバッグでかなり食った。よろしくない。過去と比較すると、どの程度1年間でコーディング力が変わったか観察できて面白いかもしれない。内容自体に差はないがコードの可読性は結構上がったと勝手に思っている。JOI 2007-2008 予選…

OCamlで第10回JOI予選問題を解いてみた

最近OCamlはじめました。情オリ前なのに…(こんな暇な事をしている暇は無い、はずなのだけど…) OCamlという物の雰囲気の参考にでもしていただければ幸いです。詳しい人からのツッコみお待ちしています。 問題1: 合計時間 let rec get_times n = if n > 0 then…

読みたいアドベントカレンダー系

Competitive Programming Advent Calendar - PARTAKE C++11 Advent Calendar 2011 : ATND Haskell Advent Calendar 2011 - PARTAKE Vim Advent Calendar 2011 : ATND neobundle.vim(入れた) Solarized unite.vim vimfiler vimshell neocomplcache http://sit…

TopCoderの問題をローカルでテストできるジャッジを書いた

TopCoder ArenaのPracticeってなかなか開かないっていうか本当に開かないですよね。 練習できないですよね。という訳でローカルでテストするジャッジを作りました。今のところC++限定です(他言語対応予定あり)。 あと現状TLE/MLEの判定はLinuxでしか効きませ…

TopCoderのSRM中にいかにしてスコアが下がっていくかが分かるストップウォッチを作った。

TopCoder SRM Problem Score Timer 微妙な物を作ってしまったのでここで晒します。既に存在するんですかね?今日は結局全然何もできてなくてよろしくない。

TopCoder SRM 524 DIV2

Rating: 1156(緑)→1160(緑) なかなかDIV1に行けないなぁ…まあ行った所で現状DIV1 Mediumは解けそうにもないのでアレなんですけどね。585.37 Point 250: ShippingCubes #include <iostream> #include <sstream> #include <string> #include <vector> #include <climits> using namespace std; class Shippi</climits></vector></string></sstream></iostream>…

TopCoder SRM 523 DIV2

Rating: 1143(緑)→1156(緑)いろいろとしくじった。Challenge大荒れの回だった。229.78 Point 250: AlphabetPath #include <iostream> #include <sstream> #include <string> #include <vector> using namespace std; class AlphabetPath { private: bool isValid(int x, int y, vector<string>& maze) { </string></vector></string></sstream></iostream>…

TopCoder SRM 521 DIV2

Rating: 1087(緑)→1143(緑) レーティング的にはDIV1が段々と見えてきていて嬉しい。この調子でがんばろう。 System Testが荒れたので人権のある順位になったが、荒れる意味がわからない。 回全体としては不評だった。難易度設定がおかしい。679.96 Point 250…

TopCoder SRM 520 DIV2

Rating: 1014(緑)→1087(緑) 調子としては悪くないが、気分的に1000は解けてほしかった。毎回これか、これを上回ってくれる調子だと良いなという感じ。531.87 Point 250: SRMRoomAssignmentPhase #include <iostream> #include <sstream> #include <string> #include <vector> #include <algorithm> using na</algorithm></vector></string></sstream></iostream>…

TopCoder SRM 519 DIV2

Rating: 975(緑)→1014(緑) 600がいろいろとおかしい。おかしいのに通してしまったので恥ずかしい。480.29 Point 250: WhichDay #include <iostream> #include <sstream> #include <string> #include <vector> using namespace std; class WhichDay { public: string getDay(vector <string> notOnThisDay</string></vector></string></sstream></iostream>…

TopCoder SRM 518 DIV2

Rating: 962(緑)→975(緑)サブミット速度も上げていかなければいけないと感じた。1000が解けそうで解けなかった。doubleの挙動はよく分からない。599.99 Point 250: TwiceString #include <iostream> #include <sstream> #include <string> #include <vector> using namespace std; class TwiceSt</vector></string></sstream></iostream>…

TopCoder SRM 517 DIV2

Rating: 1061(緑)→962(緑) レート共々爆死した。なんてことをしてしまったんだ。あとでデバッグした結果をのせる。 250: MonochromaticBoard #include <iostream> #include <sstream> #include <string> #include <vector> #include <set> using namespace std; class MonochromaticBoard { public: i</set></vector></string></sstream></iostream>…

htmlcxxのコンパイルで'prtdiff_t' does not name a typeとか言われる問題

古いC++なのかなんだかよく分からないが、ともかくtree.hでcstddefがインクルードされていない結果怒られるので、それだけ修正すれば良い。html/tree.hで #ifndef tree_hh_ #define tree_hh_ #include <cassert> #include <memory> #include <stdexcept> #include <iterator> #include <set> #include <cstddef> /</cstddef></set></iterator></stdexcept></memory></cassert>…

Arch Linuxを使おう

Arch Linuxを使いはじめたのは6月頃なのだが、夏休みを通して使い続けてずっと快適だったので書く Arch Linuxのとは Linuxのディストリビューションの1つ。日本では他のディストリビューションと比べるとマイナー(あまり他との比較は詳しくないけど)。幾つか…

TopCoder SRM 516 DIV2

Rating: 1026(緑)→1061(緑) 250、500共に不要な悩み方をして相当時間をかけてしまい、当初500位台だったので爆死を覚悟したが、System Testが大荒れになってくれたおかげで100位台まで上がり救われた。 250: NetworkXZeroOne #include <iostream> #include <sstream> #include <string> </string></sstream></iostream>…

いかにして問題を解くか(G.ポリア著)読了

いかにして問題をとくか作者: G.ポリア,柿内賢信出版社/メーカー: 丸善発売日: 1975/04/01メディア: 単行本購入: 94人 クリック: 1,656回この商品を含むブログ (152件) を見るゴリ押しブームだかなんだか知らないが、最近少し話題になっているらしく、買った…

TopCoder SRM 514 DIV2

Rating: 951(緑)→1026(緑)やっとTopCoder登録直後のインチキレート(1031)に近付いてきた。その間1年。 250: MagicalGirlLevelOneDivTwo #include <iostream> #include <sstream> #include <string> #include <vector> #include <cmath> using namespace std; class MagicalGirlLevelOneDivTwo { private</cmath></vector></string></sstream></iostream>…

Codeforces Beta Round #80 (DIV.2)

Rating: 1486(緑)→1461(緑)1310 Points A - Blackjack #include <cstdio> int main() { int n; scanf("%d\n", &n); int res = 0; n -= 10; if (1 <= n && n <= 11) { if ((1 <= n && n <= 9) || n == 11) { res = 4; } else if (n == 10) { res = 15; } } else { res</cstdio>…

Magic Trackpadがやたら快適

OSX

夏休みになり、一気にPCの前にいる時間が伸びたせいか、右手だけが腱鞘炎になった。 手のサイズにあっていないIntelliMouseが原因だろうという結論に至り、昔から欲しいと思っていたMagic Trackpadを購入した。Apple Magic Trackpad MC380J/A出版社/メーカー…

理解できていない問題

メモ。僕の競技プログラミング力はゴミです。 SRM 426 DIV2 Medium ShufflingMachine (問題文がまずよく分からない、cardsReceivedって何だ) SRM 437 DIV2 Medium TheSwap (簡単なDPやだー) SRM 441 DIV2 Medium PaperAndPaintEasy (どう実装すればいいか分…