Entries from 2008-01-01 to 1 year

今度はUIViewでハマってた

UIViewのtagに0を使用してはいけない。なぜならデフォルト値が0だから。 値を設定するときは0以外の値にしておかないと、viewWithTagで呼び出そうとしたときに他のtag値設定していないUIViewインスタンスと区別がつけられなくなってしまう。 値はenumでも指…

Xcodeのビルドメニュー

Mac

「ビルドして進行(実行)」と「ビルドと実行」ってあるけど何が違うんだ、と思ったが、「ビルドとデバッグ」というメニューもある通り、デバッグ中には「ビルドして進行(デバッグ)」に変わるようだ。実行するかデバッグするかを切り替えたいときと切り替…

NSMutableStringの、NSMutableDictionaryへの格納方法

NSMutableStringを使って一時的に格納してある文字列を、適度なタイミングでNSMutableDictionaryに格納しようと思って、とは言えインスタンスをそのまま格納するのでは後でStringの内容が変わったときに格納されたものもすべて変わってしまう、ということで …

コマンドラインからビルドを行う

とりあえず、こんなカンジでビルドはできるっぽい。 $ xcodebuild -sdk iphonesimulator2.0 -configuration Debugけど、実行ができない… コマンドラインからSimulator上のiPhoneアプリを実行/デバッグ実行するにはどうしたらいいんだろう?

ProFTPDが外部から接続できない

自分の家のネットワークでは普通にファイルのやり取りができていたので気づかなかったけど、 どうも外部ネットワークからだとログインまではできてもそこからの操作が効かないようだ。 なんでだろうー? よくわからないけどとりあえずProFTPDをアンインスト…

selectorがよくわからずハマる

@selectorで指定したSEL型変数を引数として渡そうとしたら何度やってもうまくいかず、色々変更しているうちに、何故かNSLogの変更とかも反映されていなくなっていることに気付き、何かがおかしい、と思ってbuildフォルダを全削除してビルドしなおしたらウマ…

現在

休養中。

第4ラウンド終了時に点数が単独3位のときに2位にあがれる確率

もしも第4ラウンド終了時のスコアが単独3位だと結果にどういう影響がでるのか。 # -*- encoding: utf-8 -*- for diff in range(30): print diff f = open('result.txt', 'r') while 1: l = f.readline() if not l: break left = l[0:l.index(':') - 1] sco…

第4ラウンド終了時に点数が単独2位のときにそのまま単独2位をキープできる確率

前回の4ラウンド終了時にどんな点差になっているのが理想的なのか - すぎゃーんメモの結果を元に(500000回でやり直してみたけど)、 第4ラウンド終了時で既に単独2位のときにそのまま2位を維持できる割合を求めてみる。 # -*- encoding: utf-8 -*- f = op…

4ラウンド終了時にどんな点差になっているのが理想的なのか

どうにも自作AIが弱すぎる。 最後の一手は最適なものを選ぶとして、それ以外の場面での選択がよろしくないようだ。 各ラウンドの終了時の理想的な点数ってのはどういう点差になっているときなんだろう? と、いうわけで実験してみた。 基本的にはバラつきを…

最中限オンライン自動対戦ボット

ついにできた!!なんか嬉しい。 # -*- encoding: utf-8 -*- import mechanize import re from saichugenlib import * # 履歴の読み取り用 def str2num(str): a = ['c', 'd', 'h', 's'] return (int(str[1:]) - 1) * 4 + a.index(str[0]) # ブラウザ設定 br …

今さら知った

NSLogって標準エラー出力だったんだ!?

オンラインに攻める

なんとかオンラインでできるように、とmechanizeを入れて色々とチャレンジ。 うーん、こんなんでいいのかな…よくわからない >< とりあえずゲーム始められるところまではたどり着いているけど。 pythonで頑張る必要はあるのかな?perlのMechanizeも使ったこ…

バラつきをなくす、各ラウンドの最終ターンで最善の手を考える

同じカードが固まっていると選択肢が狭まり、最善を考えようにもどうしようもなくなるときもある。 ということで最善の手を考えないときでも、まったくのramdomではなく複数枚持っているカードから優先的に出すように変更。 # 偏っているカードから出してい…

最中限・最後の一手に最前を尽くすだけでどれだけ勝てるようになるか

5ラウンド目の3ターン目、つまり最後に残り3枚から選択する場面で最善の一手を選ぶ方法を考えてみた。 ・自分が3枚のうちから1枚を選ぶとする →自分が得点するか、自分以外(RandomAI1 or RandomAI2)が得点する。すべてのパターンを洗い出す。 →すべての…

最中限AIその2

ちょいちょい書き直してみた。 どうしても分岐が多くなって見にくくなる。。。 なんとなく自分が勝負するときに考えてることを実現させようとは思ってるんだけど、なんとも難しい。 # -*- encoding: utf-8 -*- from saichugen import Player from saichugenl…

最中限にハマった

id:nishiohirokazuさんの作った最中限オンライン。 http://saichugen-online.appspot.com/ これが面白くてついついハマってしまいまして。 参考:http://d.hatena.ne.jp/nishiohirokazu/searchdiary?word=%2a%5b%BA%C7%C3%E6%B8%C2%5d 現在29戦で9得点、まだ…

PerlでTwitterとWassr

とりあえず投稿もできるようになったので、ある程度使い物になりそうな気がする #!/usr/bin/perl use strict; use warnings; use Encode; use Getopt::Std; use HTTP::Date; # Net::Wassrは以下から取得 # http://svn.coderepos.org/share/lang/perl/Net-Was…

WassrとTwitter両方のヒトコトを取得する

ガーっと書いてみた。 #!/usr/bin/perl use strict; use warnings; use HTTP::Date; use Encode; # Net::Wassrを使用する use Net::Wassr; # Net::Twitterを使用する use Net::Twitter; # ハッシュデータのキー名 my $name = 'name'; my $time = 'time'; my …

Twitter API タイムスタンプ一時対処法

Twitter APIで取得するタイムスタンプ - すぎゃーんメモ続き。 Thu Oct 23 12:47:56 +0000 2008 と返ってくる限りは、 use HTTP::Date; my $date = 'Thu Oct 23 12:47:56 +0000 2008'; $date =~ s/\+0000/UTC/; print scalar(localtime(str2time($date))), "…

Subversionのファイル名は大文字/小文字が区別されない!?

Windowsにも対応できるように、ってことかな。 普通に大文字/小文字が違うと別ファイルだと思ってリネームしたら挙動がおかしくてビックリした。 以後気をつけよう。

Twitter APIで取得するタイムスタンプ

Twitter APIで返ってくる日付・時刻の形式はRFC2822? http://apiwiki.twitter.com/REST+API+Documentationには明記されていないみたい。あんまりマトモに読んでないけど。 [観] Twitter API 仕様書 (勝手に日本語訳シリーズ)によれば、 JSON 形式で応答を受…

言語環境の優先順位

Mac

昨日のiPhoneアプリにおけるローカライズの挙動が謎 - すぎゃーんメモについて。 どうやら勘違いだったらしく、iPhoneの場合もMac OS Xの場合と同じように言語環境の優先順位が変わるようだ。 ただし、「英語は3番目以下に並ぶことはない」という仕様が入っ…

Wassrタイムラインをコマンドラインから覗く

Wassrを堂々とブラウザで開くのも何だか気が引けるので。 #!/usr/bin/perl use strict; use warnings; use Net::Wassr; use Encode; # ユーザー情報の入力 # 例: # username=hogefugapiyo # password=******** my %conf; for (<>) { $conf{$1} = $2 if $_ =…

iPhoneアプリにおけるローカライズの挙動が謎

Mac

Cocoaアプリ/iPhoneアプリに共通して、NSLocalizedStringによる文字列のローカライズが可能になっている。 方法はだいたい以下の通り。 使用したい文字列をNSLocalizedString関数で呼び出すようにする。 NSLog(NSLocalizedString(@"helloworld", nil)); →1つ…

ことえりの小文字

Mac

今までずっと小文字の入力に「L+[aiueo]」を使ってきたので、 Macでたまに小文字を使おうとするとどうしても「らりるれろ」になってしまう。 「X+[aiueo]」に慣れるしかないのだろうか?「L+[aiueo]」でも小文字が入力できるように設定を変えられないのか? …

なんとなく唐突にPythonに触ってみた

こんなカンジでいいのかな。 #!/usr/bin/python a = [2] for i in range(3, 10000): flg = True for j in a: if (i % j) == 0: flg = False break if (flg): a.append(i) for i in a: print i

ファイル名の一括変更

$ ls hoge1.txt fuga1.txt piyo1.txtというファイル群に対し、ファイル名に含まれる番号だけを変えて $ ls hoge2.txt fuga2.txt piyo2.txtとなるようにしたくて、調べてた。 最初は、 $ for a in `ls *1*`; do mv $a `echo $a | sed "s/1/2/"`; doneというの…

hexdumpでASCII文字も同時に表示

hexdumpに'-C'オプションを付けると同時にASCII文字も表示できる $hexdump -C hoge.c 00000000 23 69 6e 63 6c 75 64 65 20 3c 73 74 64 69 6f 2e |#include <stdio.| 00000010 68 3e 0a 0a 69 6e 74 20 6d 61 69 6e 28 69 6e 74 |h>..int main(int| 00000020 20 61 72 67 63 2c 20 63 68 61 72 20 2a 61 72 67 | argc, char *arg| </stdio.|>…

Emacsのsubshellとターミナルのbash

ターミナルを開いたときは".profile"は読まれるけど".bashrc"は読まれないみたい。 Emacsのsubshellでは、".bashrc"は読まれるけど".profile"は読まれないみたい。 どちらかだけに環境変数の設定とかを書いているとターミナルとEmacs subshellで整合性がとれ…