ICFPC 2016にチーム「試運転」で参加しました

ICFP Programming Contest 2016: Official Site: Task Description ICFPC初参加です。 チームメンバー @yazaten @yurahuna @menphim @shora_kujira16 チーム名「試運転」でNAISTの学生とNAISTの学生予備軍で参加しました。 pic.twitter.com/zGE84UeIT1— ゆら…

TypeScript + power-assert + Mocha + Karma + webpack を使ってブラウザ上でJavaScriptをテストする(2016/12/19追記)

github.com 2016/12/19追記 現在では様々な状況が変わっており,この記事の内容だけでは動作しません。コメント欄に追加の情報がありますのでそちらを参照してください。 やりたいこと JavaScriptを書くのがつらい → TypeScriptを使って型のあるプログラミン…

JavaScriptで作った微妙なツールの紹介

単独の記事で紹介するほどではないかな,と思ってブログには書いていなかったのですが,少し前からよくJavaScriptで微妙なツールを作ってGitHub Pagesにアップロードしています。作ったツールの中から,多少は使い道がありそうなものをいくつか紹介します。 …

ACM ICPC 2016 国内予選参加記

進学したので新しいチームで参加しました。 チーム構成 学部生がいない大学院に進学してしまったので,M1と早生まれ or 飛び入学のM2だけでチームを作る必要がありましたが,なんとかなりました。 大学の近所でこういう看板を見つけたので,チーム名はchasen…

100 numpy exercisesで見つけたNumPyの便利そうな機能

github.com 今まで知らなかった関数をいくつか見つけたので,それについて調べました。 numpy.ndarray.flags numpy.ndarray.flags にはいろいろなフラグが設定できる。たとえば writeable を False に設定した行列に対して書き換えを行うと例外が発生する。 …

hyperoptでハイパーパラメータをチューニングしてみた

Kaggleとかやってる人に人気のあるアレです。 github.com インストール ここ数ヶ月の間,開発が停滞していて,Python3の互換性の問題を修正するプルリクエストが取り込まれていない状況です。 不幸にもPython3に関する問題に追突してしまった場合には,修正…

Wordの数式ショートカット (Word 2016 for Mac)

Mac

設定方法 「ツール」 → 「ショートカット キーのユーザ設定」 「すべてのコマンド」から「EquationToggle」を選択する(「InsertEquation」でもいけるという情報をどこかで見た気がするけど,私の環境ではダメだった)。 初期設定では control+= というショ…

NAIST周辺の生活環境(2017年版)

基本的な情報については他のサイトでも見つかるので,私は最近更新されたことについて書きたいと思います。 学内にコンビニが出来た www.naist.jp オープンキャンパスに来られた人はご存知かと思いますが,学内にコンビニが出来ました。私が去年受験した時に…

Preztoを使ってzshrcをシンプルに作りなおした

追記 ここ10ヶ月ほど本家リポジトリのmasterブランチの更新が無く,先行きが不透明なのでforkを探してみました。 kujira16.hateblo.jp はじめに 研究室にzshのヘビーユーザーがいたので,それに触発されてzshの設定を作りなおしました。 私がzshを使い始めた…

サークルでPython勉強会を開いてみた

speakerdeck.com speakerdeck.com . @scaled_wurm 「今インストールしている公式処理系を消してanacondaで入れなおそう」の意味でした。スライドだけ見ると意味不明ですね— しょラー (@shora_kujira16) March 28, 2016 サークルの後輩が「今までC言語しか触…

kd木のライブラリjtsiomb/kdtreeで最近傍探索を高速化してみた

次のような問題を解く必要がありました 3次元空間中に点群 と がある。ユークリッド距離が最小となるペア を報告せよ(決定的に振る舞うなら近似でもOK) もっと良い方法もあるのかもしれませんが,今回はKD木を使って くらいの計算量で解くことにします。調…

CMakeとNuGetの相性が怪しい?

C++

C++のビルドツールとして、先月くらいからCMakeを使い始めました。理由はVisual Studio用のソリューションファイル生成機能を使いたかったからです。 このプロジェクトではBoostも使用しているのですが、せっかくなのでNuGetを使ってBoostを導入してみました…

私がIIJmioを契約したときの罠の話

今月 (2016年1月) がドコモの2年縛りの更新月だったので,紆余曲折ありましたがIIJmioに乗り換えました。 紆余曲折の具体的な内容 ( ^o^)デビットカードでIIJmioを契約するぞ! ( ˘⊖˘) 。o(ん,待てよ?先月調べた時には使えたはずだぞ?) IIJ┗(☋` )┓三 IIJ…

Okapi BM25をスパース行列のまま計算するPythonライブラリを作った

情報検索で使われる単語の重み付け方法のひとつにOkapi BM25というものがあります。文献によって細かな違いはありますが,今回は Wikipediaに載ってるやつ を使うことにします。 それぞれの文書におけるそれぞれの語の重みを表す行列を計算するクラスを作り…

MS Wordで論文を書くことを強いられているんだ! Vol.2

前回 kujira16.hateblo.jp 数式ツール Word 2007以降かなり使いやすくなっているのだが,インライン数式を多用するような場合にはさすがにLaTeXのほうが使いやすいと思う。同意できない人は以下の文をWordで入力してみてほしい。 $adj(v)$は頂点$v$に隣接す…

FF13 FF13-2 LR-FF13 (Steam PC版) レビュー

無印から順番に数ヶ月前からプレイしていたのですが,正月休み中に一通りクリアできました。PS3を持っていないので,全て初見プレイです。 コントローラー ゲーム自体にはキーコンフィグを変更する機能が付いていないので,コントローラーによってはまともに…

くまのプーさんのホームランダービー!

本年の打ち初めはオウルに惨敗という結果に終わりました。 応援ありがとうございました #打ち初め pic.twitter.com/So53e3FF9S— しょラーbot (@shora_kujira16) 2015, 12月 31 pic.twitter.com/KmzdBuo606— しょラーbot (@shora_kujira16) 2015, 12月 31 pic…

お誕生日コンテスト X - この問題はほんとうにひどい問題であるため,できれば先に他の問題のほうをお楽しみいただければと思っておりまして,ですので他の問題を通し終えて暇になり,かつその暇を

問題 birthday0410.contest.atcoder.jp 解法 343点までしか取れていませんが,満点を取ろうとするとキツいので勘弁して下さい。 まずはノイズを取るためにメディアンフィルタをかけます。注目している画素と,そのマスの周囲8画素の合計9画素の中で黒と白の…

MS Wordで論文を書くことを強いられているんだ! Vol.1

若干はみ出ても良いから1行に収めたい 画面上方(文書とリボンの間)にあるやつを使って右インデントを右側にずらす. 脚注 参考資料タブの中にあり,普通の使い方をする分には使いやすいのだが,「左下に置きたい」,「右下に置きたい」,「線の太さを変え…

Matplotlibでお絵かきする練習

# coding: UTF-8 from __future__ import absolute_import, division, print_function, unicode_literals import matplotlib.pyplot as plt from matplotlib.patches import Circle, Wedge, Polygon, Ellipse plt.figure(figsize=(8, 8)) ax = plt.gca() # …

PythonでEMアルゴリズムを可視化してみた(混合正規分布)

可視化してみました。 解説 以下の動画が一番分かりやすいです。 www.youtube.com Q関数を最大化する, , の求め方は,実際に解いてみると,本当にラグランジュの未定乗数法を使うだけという感じでした。ただし という制約を組み込むのを忘れずに… について求…

楽しいGNU Parallel

「スクリプト言語で書いた処理を合計で5ギガバイトくらいあるHTMLファイル群に適用したい。数時間なら待っても良いが,数日かかるのは困る」という時に役立ちました。 find input -name "*.html" | parallel --dry-run --progress --joblog /tmp/parallel.lo…

ICPC アジア地区予選 2015 C問題 Sibling Rivalry

問題 http://judge.u-aizu.ac.jp/onlinejudge/contest/ICPCOOC2015/all_problems.pdf 解説 ゲームっぽい問題でもゲーム木みたいなものを書けば良いとは限らない。特に,状態遷移に閉路が生じるときはダメ。ベルマンフォードっぽい方法で,ゴールから決めてい…

ICPC アジア地区予選2015 参加記

問題が解けなさすぎて,魂を抜かれました… このままでは引退できないので,来年も頑張ります。 NAISTに来年度在籍予定で,参加資格がある方はぜひご連絡を!

ICPC 模擬地区予選 2015 参加記

2015/Practice/模擬地区予選/案内 - ACM-ICPC Japanese Alumni Group メンバー 私 OUDON氏 23氏 解けた問題 A. M and A 問題文 KADOKAWAとdwangoが云々という説明をする。「LCSするだけやん!」と謎の早とちりをしてWAを量産してしまう。つらい。 OUDON氏にG…

scikit-learnで単語文書行列を作る方法の比較

目的 テキストデータから特徴ベクトルを作って何かやろうと思ったときに,私の場合は何も考えずに単語文書行列を作ってナイーブベイズのようなベースライン的な手法を試すところからはじめます。単語文書行列というのは以下のページに載っているような行列で…

ICPCのライブラリの印刷手順

1. GitHubのWikiにライブラリをまとめる 長すぎる行は折り返されるので,適度に改行を入れます 2. 無駄なものを消す qiita.com 3. フォントを大きくする 印刷時の設定でA4用紙1枚に2ページ分印刷するのですが,何もしないでいるとフォントサイズがさすがに小…

CODE FESTIVAL 2015 Final I 風船ツリー

注意 この記事を書いた人はまだACしていません 解けました (2015/11/16) 問題 http://code-festival-2015-final-open.contest.atcoder.jp/tasks/codefestival_2015_final_i 前提 整数のmultiset (日本語では多重集合と呼ぶそうです by @climpet さん) Sに対…

AOJ 2667 Tree (クエリ平方分割解法)

問題 http://judge.u-aizu.ac.jp/onlinejudge/description.jsp?id=2667 解法 クエリをB個ごとのブロックに分割する。ブロックのはじめにやる処理をSetUp,ブロックのおわりにやる処理をTearDownと呼ぶことにする。 SetUp ブロック内のクエリで関係する頂点だ…

ICPC 2015アジア地区予選のSystem Trial DVDを試した

System Trial DVDって何? ↓これです システム環境 | ACM-ICPC 2015 Tsukuba ↓起動するとこんな感じです 最初にやること キーマッピングの変更 (本番ではおそらく不要) 競技概要 | ACM-ICPC 2015 Tsukuba なお、キーボードはつくば大会が準備した日本語キー…