Home > Archives > 2007年05月

2007年05月

123

あなごるに 123 という新しい問題が出来ていたりするのだが… どう頑張っても sed だと無理な気がする.ファイルの入出力やexecができれば方法はいくらでもあるけどこれらを禁止されている場合 sed は外乱を入れられないので出力を変えられない.一発ネタ的な問題としては非常に面白いけど sed で解けないと悲しい…

ITBBをいじるの2

scan と reduce も分割されたインデックス領域を受け取る関数を引数に取る.効率の面から考えると範囲を取る関数の方が良いこともあると思うけど使う側としては要素二つを取る結合的な演算子一つを渡すだけにしてほしい.scan の場合は行きと帰りで別の演算子というか関数を定義できるらしいが,これらを全く別物に定義するような計算ってどんなんだろう? 結構謎というか使いにくい気配が漂っている…

ITBBをいじる

Intel® Threading Building Blocksの体験版をダウンロードして動かしてみた.parallel_for, reduction, scan などのデータパラレルと,parallel_while, sort, pipeline などのタスクパラレルと,concurrent な vector, hash table, queue があるらしい.

とりあえず parallel_for はインデックス(イテレータ)の範囲をブロック分割し,個々のブロックに対して関数オブジェクトを適用するらしい.これって分割されたサブレンジ外にもアクセスできるよなぁきっと.そういうのどうするんだろう?

とりあえず他のも含めてまたあとで調べる.

あなごる Sierpinski Fractal@sed

最初 214B だったものを縮めて現在 178B.同じ演算を繰り返すだけなのでsedで書けないことはないと思って書いたけど思いのほかうまく縮まってくれないコードになってしまった.埋め込んだほうが短かったりするのかなぁ?

久々にあなごる

一ヶ月ほどあまりチェックしてなかったけど問題がいくつか増えているらしい.で,数日前に Rule 30 というのを毎度のごとく sed で書いてみたら一時間たたぬうちに shinh さんに10B以上差をつけられ… ちょっとあきらめモード.が,とりあえず時間ができたので試しに書き直してみたら 58B まで縮まった.やっぱり処理の手順をちゃんと考えて無駄な処理省かないとだめだなぁ.さて,もう少し頭をひねってみやう.

locale を少し変える

locale に "japanese" を指定したら数字の出力に3桁ごとのカンマが入るようになってしまった.ちょっとありがたくないので数字の出力まわりだけ "C" の locale の設定を使うことにした.で,下のようなコードを書いたところうまくいった.

wout.imbue( std::locale::locale( std::locale::locale( "japanese" ), "C", std::locale::numeric ) );

本当に正しいことをしているのかどうかは不明.なんとなく locale に関する情報が少なすぎる気がする.

コンストラクタが…

C++でコンストラクタ内から同じクラスの別のコンストラクタを呼べないのが不便.が,メンバ初期化リストがあるときに振る舞いが変になったりするからしょうがないのかとも思う.初期化リストがないときだけでもいいから別コンストラクタ呼べるようにならんかなぁ.

Home > Archives > 2007年05月

Search
Feeds

Page Top