トップ «前10日分 最新 次10日分» 追記

はじめてのにき

ここの位置付け

2004|11|
2005|03|04|05|06|07|08|09|10|11|12|
2006|01|02|03|04|05|06|07|08|09|10|11|12|
2007|01|02|03|04|05|06|07|08|09|10|11|12|
2008|01|02|03|04|05|06|07|08|09|10|11|12|
2009|01|02|03|04|05|06|07|08|09|10|11|12|
2010|01|02|03|04|05|06|07|08|09|10|11|12|
2011|01|02|03|04|05|06|07|08|09|10|11|12|
2012|01|02|03|04|05|06|07|08|09|10|11|12|
2013|01|02|03|04|05|06|07|08|09|10|11|12|
2014|01|02|03|04|05|06|07|08|09|10|11|12|
2015|01|02|03|04|05|06|07|08|09|10|11|12|
2016|01|02|03|04|05|06|07|08|09|10|11|12|
2017|01|02|03|04|05|06|07|08|09|10|11|12|
2018|01|02|03|04|05|06|07|08|09|10|11|12|
2019|01|02|03|04|05|06|07|08|09|10|11|12|
2020|01|02|03|04|05|06|07|08|09|10|11|12|
2021|01|02|03|04|05|06|07|08|09|10|11|12|
2022|01|02|03|04|05|06|07|08|09|10|11|12|
2023|01|02|03|04|05|06|07|08|09|10|11|12|
2024|01|02|03|04|05|06|07|08|09|10|11|

ToDo:


2006-07-28

_ ふつける

そういや買ってないな…

(10:53)

_ よーわからんが

http://www.plala.or.jp/access/community/mailplus/smtp_auth.html

25番が閉じたということなので 2525 にポートフォワーディング。

(10:54)

_ ノドがいたい

いたい。

(12:30)

_ そういえば

アレは眠い頭でネタバレを見てしまって 意気消沈なのであった。 副作用は最初ちらっと考えたんだけど なんか頭から抜けてた… というかネタバレ見ても簡単に実装できる気がしないというはなしが。 まぁ今度やる。絶対にやる。

(12:32)

_ cvs ci

commit ってこう省略できたのか…!

(12:41)

_ gsc と gcc チュートリアル

http://svn.gna.org/viewcvs/gsc/branches/hello-world/

(13:19)

_ 趣味はバッドノウハウ

というのもありえるらしい

(14:00)

_ cppllも特殊なら

スラドフィルタみたいに cppll フィルタを作ればいいんだ。

うーん AC の方が揶揄しやすい。

(14:30)


2006-07-27

_ とうとうやったよ

uploader 取ったあ。 k.inaba さんはウソつきじゃなかった!

結局、 downloader はだいたい自動で、 uploader は and 出てきてきちーと思ったので、 だいたい手動でやりましたあ。 ソケットで UM にデータ送れるようにしてあったから、 x 連打とか抽出とかは自動でやるスクリプト作りましたが。

あとどうでもいいですが僕は IRC は好きですが メッセはいやです。 IRC のキモはめどい時は無視して良いことだよなと。

_ speak 使うのかな…

_ あひゃ

某とか言われてると面白い。

http://d.hatena.ne.jp/nuc/20060722/p1

_ 検閲されたデータで条件分岐させて ゲームの動作変えたらいいんじゃないかなぁ…

_ room_from_name

_ できた気がする

やりかたはわかったけど、 実装ができないという ML 現象。 この処理系λあるのかなぁ なさそうだなぁ。

できてなかった…

_ 経過日数

http://dream.ie.ariake-nct.ac.jp/~bashi/d/?date=20060722#p01

i@un ~> ruby -e 'puts Time.now.yday'
208

(18:31)

_ @shell

i@un ~> date +%j
208

(18:38)

_ ニセショルイ

の類はアカデミックでもあって、 そしてそれはむしろ事務みたいなのが吸収してくれる、 普通の会社より多いんじゃないかと思ったのには、 どの程度影響されたんだろなぁ。

要するにめんどくせえ…

(19:24)


2006-07-26

_ TODO

  • HPM
  • SDL.d
  • TSS
  • BF
  • ADVTR

ぱっと思いついたのはこんなのか。

(00:08)

_ 脳は計算機のよう

逆だろ。

(00:57)

_ 起動プロセス

http://d.hatena.ne.jp/toge/20060725#1153843313

そもそも sleep とか無駄に入ってるからなぁ。

/etc/rc.d/rc の action $"Starting $subsys: " $i start に & つけるだけで起動えらく速くなるし。 たぶん倍増くらいはいってる気も。 OK FAILED が見れなくなるけど、まぁ別に問題ない…

(01:11)

_ やる気おきない

から ADVTR でもやるかーとか思ったんだけど (プライオリティキューぶっこわれはやる気ない証拠) そうそうこのマシンではメモリが足りないのであった。 512MBで足りないというのはなんつーか UM が悪い気がしてならない。

(01:52)

_

(02:54)

_ めも

(02:54)

_ もけ

(02:54)

_ なんか mdiary がいかれてるのかなぁ

という結論

(02:58)

_ ほげ

とりあえず UM ちょっとイジったら メモリ使用量ずいぶんマシになって俺のアホアホと思った。

(02:58)

_ k.inabaさんはうそつきだ!

こんなもん手で解けるもんか!

(03:58)

_

XML とか S 式ってまじですか。

今回の ICFPC は、「関数型言語屋必死だな」っていう 印象を与えられなかったのも良かったかな。 なんか、先一昨年以来の2年は、 関数型つかえオーラを感じたんだけど、 今回は関数型言語のアジみたいなものを、 アフォードちゅうんかね、 さりげなく提示されてる印象を受けた。 というか全体的にアフォードが非常にうまいわけだけど。 まず練習をさせる、というか、 こういうのはたぶん、そんなに簡単じゃない。

(04:35)

_ どうでもいいけど

さっき積まれてるアイテムに ex できることに気付いたんですがね…

つーか本当は、 keypad 解いた後に ex コマンドで アイテムに必要なもの調べられると知ったんですがね…

つまり全パターン combine してたんだなー。 あほー。あほー。

(04:36)

_ いや…

記憶が錯綜してる。

これじゃあ antenna 無し radio に気付くわけないし、 ex で調べた記憶はある。

(04:39)

_ switch!!!

ANSI がかっこE

(04:41)

_ こんなん見るとますますやる気が起きない

(success (command (go (room (name "54th Street and Dorchester Avenue")(description "You are standing at the corner of 54th Street and Dorchester Avenue. From here, you can go north, east, south, or west. ")(items ((item (name "X-9247-GWE")(description "an exemplary instance of part number X-9247-GWE")(adjectives ((adjective "orange-red") ))(condition (pristine ))(piled_on ((item (name "V-0010-XBD")(description "an exemplary instance of part number V-0010-XBD")(adjectives ((adjective "magenta") ))(condition (broken (condition (pristine ))(missing ((kind (name "X-9247-GWE")(condition (pristine ))) ))))(piled_on ((item (name "F-1403-QDS")(description "an exemplary instance of part number F-1403-QDS")(adjectives ((adjective "pumpkin") ))(condition (pristine ))(piled_on ((item (name "P-5065-WQO")(description "an exemplary instance of part number P-5065-WQO")(adjectives ((adjective "heavy") ))(condition (broken (condition (broken (condition (broken (condition (pristine ))(missing ((! kind (name "T-6678-BTV")(condition (pristine ))) ))))(missing ((kind (name "B-4832-LAL")(condition (pristine ))) ))))(missing ((kind (name "F-1403-QDS")(condition (pristine ))) ))))(piled_on ((item (name "B-4832-LAL")(description "an exemplary instance of part number B-4832-LAL")(adjectives ((adjective "taupe") ))(condition (pristine ))(piled_on ((item (name "L-6458-RNH")(description "an exemplary instance of part number L-6458-RNH")(adjectives ((adjective "gray40") ))(condition (broken (condition (pristine ))(missing ((kind (name "P-5065-WQO")(condition (broken (condition (pristine ))(missing ((kind (name "T-6678-BTV")(condition (pristine ))) ))))) ))))(piled_on ((item (name "T-9887-OFC")(description "an exemplary instance of part number T-9887-OFC")(adjectives ((adjective "eggplant") ))(condition (broken (condition (broken (condition (pristine ))(missing ((kind (name "X-6458-TIJ")(condition (pristine ))) ))))(missing ((kind (name "H-9887-MKY")(condition (pristine ))) ))))(pi! led_on ((item (name "Z-1623-CEK")(description "an exemplary instance of part number Z-1623-CEK")(adjectives ((adjective "indigo") ))(condition (broken (condition (broken (condition (pristine ))(missing ((kind (name "D-4292-HHR")(condition (pristine ))) ))))(missing ((kind (name "L-6458-RNH")(condition (pristine ))) ))))(piled_on ((item (name "H-9887-MKY")(description "an exemplary instance of part number H-9887-MKY")(adjectives ((adjective "yellow-green") ))(condition (pristine ))(piled_on ((item (name "F-6678-DOX")(description "an exemplary instance of part number F-6678-DOX")(adjectives ((adjective "shiny") ))(condition (broken (condition (broken (condition (pristine ))(missing ((kind (name "J-9247-IRG")(condition (pristine ))) ))))(missing ((kind (name "V-0010-XBD")(condition (pristine ))) ))))(piled_on ((item (name "R-1403-SXU")(description "an exemplary instance of part number R-1403-SXU")(adjectives ((adjective "pale-green") ))(condition (pristine ))(piled_on ((item (nam! e "USB cable")(description "compatible with all high-speed Universal Sand Bus 2.0 devices")(adjectives )(condition (broken (condition (broken (condition (broken (condition (pristine ))(missing ((kind (name "T-9887-OFC")(condition (broken (condition (pristine ))(missing ((kind (name "X-6458-TIJ")(condition (pristine ))) ))))) ))))(missing ((kind (name "F-6678-DOX")(condition (pristine ))) ))))(missing ((kind (name "N-4832-NUN")(condition (pristine ))) ))))(piled_on ((item (name "N-4832-NUN")(description "an exemplary instance of part number N-4832-NUN")(adjectives ((adjective "sienna") ))(condition (pristine ))(piled_on ((item (name "J-9247-IRG")(description "an exemplary instance of part number J-9247-IRG")(adjectives ((adjective "slate-gray") ))(condition (pristine ))(piled_on ((item (name "B-5065-YLQ")(description "an exemplary instance of part number B-5065-YLQ")(adjectives ((adjective "dim-gray") ))(condition (pristine ))(piled_on )) ))) ))) ))) ))) ))) ))) ))) ))) ))) )))! ))) ))) ))) ))) ))))))

(04:42)

_

multmem の実装のしかたわかったぞ。 くそう今頃遅いよ。 でも今思いついたのだと点数少なそう。 しかしせっかくだから試してみようぞ…

(06:17)

_ ぜんぜんわかってなかった。

(06:23)

_ む、できた

ひどすぎて手では実装できそうもないけど。

a+a を計算しまくって、 0 になるまで M[4]=a, M[5]=a*2, M[6]a*4,... を並べる。 この右は M[12]=0 にしておく。 この並んだ数は例えば、奇数なら8個などと並ぶ。

で、これを左向きにたどる。 この時のメモリを i としよう。 i は最初は必ず 0x80 だ。 これを別な場所 d に記録しておく。 次の値 i を見たら、d から 2回ひいてみて、 0になるかをチェックする。 0になったら d XOR i を d に、 そうでないなら i を d に代入する。 これで 0x40 が手に入る。 これを終わりまで(M[3] は 0にしておく)繰り返すと、 a の最右 bit が立った値 d=2^e が手に入る。

a-=d を 0 になるまで計算して、 その回数だけ、 b を 0 に足し算して値 f を得る。

これで得られた数値 f (M[2] に入れてやる) は a*b/d になる。 さて、 M[11] から順に、 0 でない数値があらわれるまで f += f を計算する。 するとちょうど f*2^e つまり a*b が得られているはず。

ありえん。 本当にこんなめんどいのか。

(07:26)

_ 信じがたいものを見た気分

ubyte M[256];

ubyte mult(ubyte a, ubyte b) {
    int i = 4; // i is register
    ubyte c = a;
    M[i] = c;
    while (true) {
        c += c;
        if (!c) break;
        M[++i] = c;
    }
    ubyte d = 0;
    ubyte g = 0;
    while (true) {
        ubyte e = M[i--];
        if (!e) break;
        d = (e&g)^e;
        g ^= d;
    }
    ubyte f = 0;
    while (true) {
        a -= d;
        f += b;
        if (!a) break;
    }
    i = 11;
    while (true) {
        if (M[i--]) break;
        f += f;
    }
    return f;
}

void test_mult(ubyte a, ubyte b) {
    foreach (inout ubyte u; M) u = 0;
    ubyte c = a*b;
    printf("%d == %d ?\n", mult(a, b), c);
    assert(mult(a, b) == c);
}

int main() {
    test_mult(35, 27);
    test_mult(2, 11);
    test_mult(4, 11);
    test_mult(18, 11);
    test_mult(0xff, 0xff);
    test_mult(0xd1, 0xc3);
    return 0;
}

0x80 から落としていく部分のアルゴリズムはダメだったので少し変えた…

(08:06)

_ フォント職人

どうしよう。 どう見ても商用クオリティだ。

font.gif

(11:26)

_ フォント神

ちょっと修正した。

font2.gif

どうです?この風格。 これが王者の威光というものです。 このフォントでキリストを越えてしまったかもしれません。 少なくとも空海クラスは既にメじゃありません。 (当たり前です。私はこのフォントでノーベル文学賞を狙っているのですから) 世界中の亡者どもがこのフォントを狙ってくるでしょうね。

甘い。

これだから猿は甘いのです。 私はマイクロソフトと契約をする予定です うんぬんかんぬん…

案外難しい文体なんだなと思った。

下に GPL がどうとか書いてあるけどなー。

_ ソースコード

source.gif

これで pre タグとかもういらないな。

_ Pot Noodle

うんまずい…

メンがまずすぎる。 スープは喰えなくはないがおいしくない。

_ まさしく

codex.um 攻略サイト欲しいと思ってました! あと野良スコアタックとかしたいい。 ただ自分が全然上位とかにかめなさそうなのが萎えです。

_ そういう手作業がそれでもしんどく思ったのですが

でも僕がんばるよ!ADVTR解くから!

_ UM のソケット対応

またしても萎えかけてから、 UM をソケットで書き込めるようにした。 手で解く気無さげだぞ!

それはそうと、これはあれだ。 外部に公開すると面白くね? 外から UMIX に入れるんだぜ。

_ えー

同じ画面に無いアイテムあるのね…

_ 自動化

まぁこのくらいは。

{"USB cable"=>"eggplant T-9887-OFC", ["X-6458-TIJ", ["shiny F-6678-DOX", []], ["sienna N-4832-NUN", []]], "magenta V-0010-XBD"=>"orange-red X-9247-GWE", [], "eggplant T-9887-OFC"=>"!X-6458-TIJ", [, ["yellow-green H-9887-MKY", []]], "shiny F-6678-DOX"=>"slate-gray J-9247-IRG", [, ["magenta V-0010-XBD", []]]}

["USB cable", "sienna N-4832-NUN", "shiny F-6678-DOX", "magenta V-0010-XBD", "orange-red X-9247-GWE", "slate-gray J-9247-IRG", "eggplant T-9887-OFC", "yellow-green H-9887-MKY", "!X-6458-TIJ"]

あとは手動でいいや…

ああなんとか TIJ は存在しないけど、そもそも欠けてていいのね…

_ OK

USB 自動取得成功。

本日のツッコミ(全2件) [ツッコミを入れる]

_ shinh [コメントテスツ]

_ shinh [もういちどコメントテスツ]


2006-07-25

_ 人数報告

ICFPC のメールで、 参加者はたくさんいて、 ほげほげな人は何人いました!とか書いてあったけど、 UM書いてアドベンチャーで点数取っただけの子が 39人もいました!とか。

(05:29)

_ サドプログラミング

マゾプログラミングがあるなら当然あってしかるべきだろう。 でもいまひとつ適切なものが思いつかない。

人を積極的に罠にはめて喜ぶようなもの… と考えるとショートコーディングなんかは S であって M であるということになって あひおが。

(17:44)


2006-07-24

_ bug-oriented programming

なんて魅力的な単語だろう!

(02:30)

_ yangが

いないなぁ…

(13:57)

_ a professional programmer knows that shorter code is better code

(15:31)


2006-07-23

_ ミスったにゃー

ちゃんと評価遅延させないと無限再帰ですぞ、 とメモしてねるる。

(05:28)

_ 寝て起きたら

みんなすげー点数になってやがるぜ。 特に解けそうに思ってたレイトレ解かれてるの悲しす。 どうせ勝てないので別に関係ないという説もあり。

(15:05)


2006-07-22

_ ICFPC

3時くらいまで寝ちゃって寝坊でござる。

頭だけでこねくり回して わけわからんなーと思ってたんだけど、 実装してみたら問題の意味がわかるというワナ。 時間かかりすぎた。

(07:04)

_ なんか

全然進まない。 俺はどうしようもなく馬鹿なんじゃなかろうか。

なんか codex.umz は 0 を指定して alloc して free してる気がする。

(15:07)

_ あほーあほー

やっと動いたよ…あほー。

(16:14)


2006-07-21

_ あ れ え ?

なんで前の不動産屋に 既に売れてましたーって言われた物件が 今になって別の不動産屋に本日の新着物件として紹介されるの、 かなー? 不動産業ってなんやねん。

(12:10)

_ マスが仕事やめたとか

(16:04)

_ 雑用

オワタ。

ICFPCちゃんとできそうだわー。 問題が面白くてほどほどの難易度だったらいいなぁ。

(17:39)


2006-07-20

_ BeanShell

きょうは BeanShell に感動記念日。

http://d.hatena.ne.jp/sa-y/20060719#1153306834

(03:49)

_ ICFPC

古文書が配布されたらしい。

ホントに魔術師のノリなのだな。

(14:45)

_ 64x64 の白黒 gif

で 2.4MB は大きすぎるなぁ。

(15:22)

_ codex

(15:41)

  • MKULTRA-abracadabra は ちょうど 4 キロ

_ (15:44)

  • MKULTRA の後に埋まってるのも gif と同じデータだった…

_ (15:51)

_ ブラックリスト

http://shadow.s63.xrea.com/jinro2/jinro.cgi?NO=994&DISP=ALL

実装したらみんながさとみさんを入れるわけで、 それならさとみさんバンしたら良くね。

(16:40)

_ ポイント制

  • 村側勝利を S=1 ポイントとする。
  • 狼側敗北は S=-1 ポイント。
  • 村の勝率を p とすると、村敗北は S=-(p/1-p) 点。
  • 狼側勝利は S=(p/1-p) 点。
  • 特定の行動を取った時に、その行動を取った陣営の勝率を q として全体の勝率 p も用いて、 (q-p)*S ポイントが加えられる。

なんだこれだけでいいのか。いや、 S*(q/p-1) が正解か。

(17:00)


2006-07-19

_ failmalloc & sdmkun

げーむだから別に落ちてもいいんです! っていうか本当に malloc が落ちるなんてのを インフラ以外でハンドリングすべきと思ってるのかい? とか主張しようと思ったのだが。 なんかそんなネタ主張はどうでもよくなった。

i@u ~/wrk/sdmkun> LD_PRELOAD=/usr/local/lib/libfailmalloc.so ./sdmkun
terminate called after throwing an instance of 'St9bad_alloc'
  what():  St9bad_alloc
zsh: abort (core dumped)  LD_PRELOAD=/usr/local/lib/libfailmalloc.so ./sdmkun

バックトレース

(gdb) bt
#0  0xffffe410 in __kernel_vsyscall ()
#1  0x41045069 in raise () from /lib/libc.so.6
#2  0x41046671 in abort () from /lib/libc.so.6
#3  0x41e1dc30 in __gnu_cxx::__verbose_terminate_handler ()
   from /usr/lib/libstdc++.so.6
#4  0x41e1b655 in std::set_unexpected () from /usr/lib/libstdc++.so.6
#5  0x41e1b692 in std::terminate () from /usr/lib/libstdc++.so.6
#6  0x41e1b7ca in __cxa_throw () from /usr/lib/libstdc++.so.6
#7  0x41e1bc0e in operator new () from /usr/lib/libstdc++.so.6
#8  0x41df5ecb in std::string::_Rep::_S_create () from /usr/lib/libstdc++.so.6
#9  0x41df70b5 in std::string::_S_copy_chars () from /usr/lib/libstdc++.so.6
#10 0x41df7267 in std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string () from /usr/lib/libstdc++.so.6
#11 0x0809dbd1 in __static_initialization_and_destruction_0 (__initialize_p=Variable "__initialize_p" is not available.
)
    at bulletmltree.cc:16
#12 0x080badb5 in __do_global_ctors_aux ()
#13 0x0804b699 in _init ()
#14 0x080bac46 in __libc_csu_init ()
#15 0x410326c9 in __libc_start_main () from /lib/libc.so.6
#16 0x0804c3e1 in _start ()

えーと。

#include <iostream>
#include <string>

std::string s("hoge");

int main() {
    try {
    } catch (...) {
        std::cout << "exception!" << std::endl;
    }
}

とかでエラーつかまらないわけだ。 これってなんか対処あるんかいな。 まぁ例外とかどうでもいいや。

(00:50)

_ 自慢じゃない

自慢じゃない(が|けど|ですが)、 は何かが「アホ(誉め言葉)」という意味で 自慢してることが多いわけだけど。

というか普通じゃないことに価値があって つまりアレだ。 逸般とか、そういうキモいアレな文脈が多い。 それに対する「ああ本当に自慢じゃないなw」 みたいなのも同様にキモいことかもしれない。

ためしに本当に自慢じゃない事例として、 「自慢じゃないが俺は寝た後は必ず起きることにしている」 とかいう文章を考えてみたけど。 まぁこれはこじつけだ。いいや。

http://tinyurl.com/pj6lu

「自慢じゃないが女」とか「自慢じゃないが腕力に自信がない」 などは、まぁ普通にいいかと思った。

(01:00)

_ 25cm/pixel

http://googlejapan.blogspot.com/

一瞬すごっ、と思ったけど、 計算して考えるともともとそんな感じか。 40pixel で 10m 。

(01:14)

_ アフタヌーン

久々だなと思いつつ拾って読んだら げんしけん終わってた。 あとげんしけんとラブやんがラブラブ系だったのもびっくり。

(01:36)

_ こういうグラフが出ると嬉しいもの

hoge.gif

(16:41)

_ 式は

f(x)=1/cos(x)
complex(x,y)=x*{1,0}+y*{0,1}
g(x)=cos(x)*cos(x)*complex(cos(f(x)),sin(f(x)))+sin(x)*sin(x)*complex(cos(f(x)),-sin(f(x)))
#plot [0.8:0.85] real(g(x))*real(g(x))+imag(g(x))*imag(g(x))
plot [0:4] real(g(x))*real(g(x))+imag(g(x))*imag(g(x))

これを解析的に極値を求めるわけですが… Mathematica かねぇ。

(16:43)

_ ICFPC のお時間

EDT 7.21 12:00 = JST 7.22 1:00 ぽい。

土曜深夜から月曜深夜まで、か。

(17:30)

_ 呑み会

英語不自由な日本人*2、英語できる日本人*2、 日本語できる外人*1、日本語ほぼダメな外人*1、 だと会話は日英混在になるようだ。 このへんが鞍点なのか…

(21:56)

_ 英語勉強に

http://video.google.com/videosearch?q=type%3Agoogle+engEDU

いいかも。

(23:30)

_ DTrace

http://sdc.sun.co.jp/solaris/solaris10/dtrace/guide.html

前の sun の D について、 news で Walter タンが半ギレぽい応対をしてて面白いけど、 半ギレぽく見えてる僕の読解力は信頼できるのだろうか。

(23:36)


2024年
11月
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
1.shinh(2006-07-31 02:31) 2.f#(2006-07-30 01:39) 3.shinh(2006-07-26 22:50)
search / home / index

全てリンクフリーです。 コード片は自由に使用していただいて構いません。 その他のものはGPL扱いであればあらゆる使用に関して文句は言いません。 なにかあれば下記メールアドレスへ。

shinichiro.hamaji _at_ gmail.com / shinichiro.h