スズキ レッツ4にSHADのボックスSH29を取り付け

レッツ4用にSHADの「SH29」を取り付けた。 SH29はAmazonで購入。 レッツ4の荷台が小さいため,台座を取り付けるのに苦労したのでメモ。荷台はこのサイズ 台座の部品など 実際には長いネジがもう4本付属しており,設置にはそちらを使用した。 写真上部の金具…

AOJ Vol.1 0115 Starship UAZ Advance

AOJ「Starship UAZ Advance」に挑戦。 方針 簡単のため,自機の座標を原点として考える 敵機の座標を(自機原点)とする バリアの3点を, , (自機原点)とする ベクトルを,バリア3点のベクトル()の和,で表す , , が定まる場合 or or ならば,ビームはバ…

AOJ Vol.1 0106 Discounts of Buckwheat

久々のAOJ「Discounts of Buckwheat」に挑戦。 方針 ナップザック問題なので動的計画法で解く。 ただし,200g,300g,500gのアイテムだけでなく,割引される最小単位である,200gx5袋,300gx4袋,500gx3袋の三つもそれぞれ取り扱いアイテムとして考える。

RubyWarriorに挑戦

同僚に教えてもらった「Ruby Warrior - Popular Free Ruby Programming Tutorial Game」に挑戦してみたのでコードを晒してみる。https://github.com/nrmnr/ruby_warrior当初、ターン制が分かってなくて、1ターンに2アクション起こして怒られたりした。 そこ…

Google playカード

気づけばブログ一年ほったらかし。Google playカードが日本でも購入できるようになったとのことで、早速買ってみた。裏はこんな感じ。 スクラッチ部分は削ると粉が出るタイプ。https://play.google.com/redeem にアクセスして、コードを入力するだけ。無事に…

MacOS+Emacs24.2でemacsclientが「can't find socket」エラー

Mac

家PCをiMacにして、いろいろと遊ぶ。 Emacsも最新の24.2をダウンロードし、インストール。 しかしターミナルからemacsclientを起動すると「can't find socket」エラーが発生。 (server-start)もしてるし…と思い調べてこちらの情報を発見。 ~/.bash_profileに…

Ruby 1.9.2と1.9.3のinitialize

Rubyを1.9.2と1.9.3の挙動の違い(バグ修正?)を見つけたのでメモ。 class C def m puts 'hoge' end end c = C.new 'fuga' # 引数に意味はない c.m としたとき, # 1.9.2 #=> hoge # 1.9.3 #=> (ArgumentError) になる。 むしろ1.9.2のバグ?

JavaScriptのクロージャを説明

続いてクロージャについても説明。こう言えばよかったと今さらながらに思ったのでメモ。 JavaScriptの関数はオブジェクトである 関数内で宣言された変数や関数の引数は,呼び出しごとに生成されるオブジェクト(変数オブジェクト)のプロパティとなる 関数内…

JavaScriptのthisのこと

会社でJavaScriptのthisキーワードについて説明する機会があった。 [this]はキーワード 同じ関数でも,呼び出される状況に応じてthisの指すオブジェクトは変わる コンストラクタ関数内のthisはnewされるオブジェクト(コンストラクタ関数の戻り値)を指して…

Gitのインストール,設定メモ

前後したけど,Gitのインストールメモ Git - Downloadsから最新バージョンをダウンロード(記事作成時は[Git-1.7.11-preview20120620.exe]) ダウンロードしたexeを実行 インストール先を[C:\git]に変更(既定の[Program Files]だと,Emacsから使えなかった…

svn->gitへのclone

gitを触ってみようと思い,試しにこれまで使っていたsvnのリポジトリをcloneしようとして躓いたのでメモ(Windows)。 git-svnのモジュール追加 git-bashで $ git svn clone file:///D/repoとしても Can't locate Git/SVN/Editor.pm in @INC ...とのエラーが発…

Word2003→2007への数式変換

Word2003までの「Microsoft数式3.0」からWord2007以降の「数式ビルダー」形式への変換について。 いろいろ調べたけど,“これ”といった方法が見つからない。ので考えてみたメモ。 方針 TeXaideを利用して,「数式3.0」→「TeX」→「MathML」と変換する。 手順 T…

小ネタ2

i = Man.new you = Woman.new i.love you 素敵なことです。 ManとWomanの実装↓ class Man def initialize @honesty = true end def love woman if @honesty puts 'I love you.' woman.love self end end end class Woman def initialize @honesty = true end…

小ネタ

i = Man.new you = Woman.new i.love you 素敵なことです。 ManとWomanの実装↓ class Man def initialize @money = 1000 end def love woman @money -= woman.cost woman.love self end def available? @money > 0 end def miss woman # nothing to do end e…

AOJ Vol.0 0026 Dropping Ink

「Dropping Ink」に挑戦。 方針 マス目の状態を表す10x10の配列を用意 空白マスをカウントする変数を用意 インクが滴下される座標と滴の大きさを取得 座標を中心に,滴の大きさに応じて配列の数値をインクリメント 同時にそのマスが初めてインクで染められる…

画期的?なソートアルゴリズム - sleep sort

http://dis.4chan.org/read/prog/1295544154で紹介されていたソートアルゴリズムが面白かったので,Rubyで実装してみた。 # sleep_sort.rb def sleep_sort nums result = [] threads = nums.map do |num| num = num.to_i Thread.new do sleep num result << …

AOJ 0000 QQ

いくつかAOJの問題に挑戦したのでメモ。 Problem ID:0000の九九を表示する問題。 まずはベタに。 int main(){ int a,b; for(a=1; a<=9; a++) for(b=1; b<=9; b++) printf("%dx%d=%d\n", a, b, a*b); return 0; } #include しなくても通るっぽい。 ここから縮…

AOJ 0004 Simultaneous Equation

二元連立一次方程式の解を求めるプログラム。 行列式を使った解法を実装してみる。 行列式による解法 二元連立一次方程式 を行列式で表現する。 両辺に逆行列を掛けて よって これを元にコードを書く。 main(){ double a,b,c,d,e,f,t; for(;scanf("%lf%lf%lf…

Online Judge

算数オリンピックの記事からいろいろ辿って「http://rose.u-aizu.ac.jp/onlinejudge/index.jsp」に着いた。 問題が豊富でおもしろそう。始めてみよう。

Ubuntu8.04+GW-USValue-EZ(PLANEX)で無線LAN

Ubuntu8.04+GW-USValue-EZで無線LAN接続するための設定覚え書き 作業の履歴 ndiswrapperを使ってドライバインストール→動作せず ndiswrapperを1.52から1.56にアップグレード ドライバ再インストール→動作した 作業内容 1.ndiswrapperを使ってドライバインス…

子どもに10回クイズを出してみた

5歳になる娘に「10回クイズ」を出題してみたところ,全く引っかからない。 (・ω・) 「“ピザ”って10回言ってみて」 (*・∀・) 「ピザピザピザ…」 (・ω・) (肘を指しつつ)「ここは?」 (*・∀・) 「ひじ!」(即答) (・ω・) 「“みりん”って10回言ってみて」 (*・∀・…

麻雀の待ちを出力する の3

〜の2の続き。 wikipedia:七対子って同じ牌が4枚だとアガれないらしい。ので,七対子判定を修正。 # jong3.rb # check_mentu # 面子の組み合わせを生成 # hai : 残り牌の数(index==牌の種類) # comb: 現段階での面子 # mati : 現段階での待ち def check_ment…

麻雀の待ちを出力する の2

昨日の続き。 手牌のデータを,牌の種類配列で持つ先の形式から,牌ごとの数で表す形式に修正。"1112345678999"→[3,1,1,1,1,1,1,1,3]。これに,配列のインデックス=牌の種類となるようにインデックス0を,また番兵として末尾に二要素を追加して使用。あと,…

麻雀の待ちを出力する

「あなたのスキルで飯は食えるか? 史上最大のコーディングスキル判定」の問題に挑戦。 # jong.rb # Array拡張 class Array def count_if(val) self.select{|elm| elm == val }.size end end # check_mati(mati, comb) # 待ち牌の残り枚数チェック def check…

小町算

小町算を解くプログラム。とりあえず簡単に演算子は+−のみ。 # komachi1.rb # ops:演算子の配列 # ops[n]...数値nの前に付く演算子 ops[0]は未使用 # -1 : [-] # 0 : [なし](次の数字と続ける) # 1 : [+] ops = Array.new(10){-1} loop do str = '' r = t…

迷路を解く

「人材獲得作戦・4 試験問題ほか: 人生を書き換える者すらいた。」で出題されている問題を解いてみた。 maze = [] dist = [] sx, sy, gx, gy = nil,nil,nil,nil readlines.each_with_index do |l, y| next if l.chomp.empty? maze.push([]) dist.push([]) l…

Luaを使う

Luaがおもしろそう。使う場面がないか考え中。

開発者の都合

Windows Update後の再起動を促すメッセージがしつこい。再起動にはそれなりに時間がかかるのに,「今すぐやれ」と何度も言ってくる。しかもポップアップで。こっちは手を止めたくないから,後でやるって言ってるのに。 自分の作るインターフェイスが,あんな…

子供の誕生日

誕生日プレゼントにと,絵本+ブロックをAmazonで注文。 ブロックはさんざん迷ってレゴの青バケツに決定。喜んでくれるといいのだけど。

実るほど頭を垂れる

今日は嫁実家の稲刈りをお手伝い。 体動かした後の風呂&ビール最高。