2005-01-01から1年間の記事一覧

D言語v0.142

D

さて、D言語の新バージョンが出たわけですが微妙です。 Added D interface file support, with much help from Dave Fladebo.とのことなので試してみましたが class A{this(){}} こんなソースで、コンパイラが死ぬ*1のでは、まだ機能として評価も出来ません…

今日はなかなか大阪にしては多目の雪が降っています。 そして、この雪は色々な被害をもたらしているわけです。 なぜ、こんなことを書くのかというと、 実は大学の講義が降雪により休講になったのです。 そして、この書き込みは学校で行っているのです。 ....…

他人のソースの良い所取りで短くしよう

C

PKU1658番でid:Ozyさんが96byteを叩き出しました。 どんな方法かは不明ですが、少なくとも今のコードを、 より短く出来るというのが分かったのは非常に大きいです。 必ず短く出来るという根拠無しにコードを考えるのは大変ですが、 そうではないのですから。…

コードを短く

C

id:RiSK:20051218 で更に5byte短縮されました。凄い...... が、自分は負けず嫌いです。 このままで自分は気持ち的に満足できるでしょうか? 否! そういうわけで、RiSKさんのコードを気合とコンパイラ依存のコードの併用で更に5byte短縮!*1いつものようにネ…

そうだ、コードを短くしよう

C

PKUの1658番(http://acm.pku.edu.cn/JudgeOnline/showproblem?problem_id=1658)の RiSKさんの神懸り的なコードを拝借してさらに短縮。 正攻法を用いて1byte、ANSI違反のコードで 1byte 計2byteの短縮 以下いつものようにネタバレ注意報発動

コードを(r

C

さて、一通り祭りも終わったので気楽に他の問題でもして遊びましょう。 と言っても問題を探すのは面倒なので他の人が挑戦してるにします。 今回、挑戦したのはid:RiSK:20051211さんの所でネタになっている1658番。 以下、回答コードを含むためお約束 「自分…

こーどをみじかくするのってたのしーですよね?

C

自分は1/4未満の確率にチャレンジする根気がないので、 timeを使ってコードを削るのは傍観していたわけですが...... しかし、現在の上位陣は従来の方法と違う、究極の解法に辿り着いちゃったようです。 自分はやりかたが分からないので想像ですが #include"h…

C

自分の数字探索プログラムにバグあったのを修正したら63byteに出来る道が開けた。 でもサーバーにアクセス出来なくてsubmitできない (´・ω・`) 追記: 復旧したのでサクッとsubmit 110011 27 001001 9 000011 3 000001 1

id:Ozyさんの所で出た 3進+文字で 64byte もはや自分のコードが暗号にしか見えない程度にカオスになってきました。 元の問題を完全無視のこのプログラムは、最終的にはどういう形になるのだろうか? とまぁ、殆どこの問題のことだけをここ数日ず〜〜っと、…

運任せって素敵

C

...... getpid ... 66byte ⊂⌒~⊃。Д。)⊃ やね氏の所からアイデアをパクリインスパイヤしました。 三回submitしたら通った。 追記:自分が書くときに気を付けたこと。 Windowsではpidの下のほうのビットは常に0っぽい(unixは知らね) #ifdef WINDOWS main(){} #en…

コ(r

C

楽しくないやり方で 71byte 通してみると、やっぱりやる気が激減です(;´Д`) まだコード削れそうな気がするのでもう少し頑張る予定。 :追記 227275の代わりに'wヒ'とかを送ったけど上手くいかない。 文字コード関係でなにかあるんかなぁ......

コードを(略 (3)

C

http://acm.pku.edu.cn/JudgeOnline/problemstatus?problem_id=1145&orderby=clen&language=-1 id:yaneurao:20051128す、すげー、なにこれ!? もはや人間技とは思えないレベルだ。 自分的には100をきるのも不可能に近いのに84byteって既に想像とかの外を行…

メタプログラミング大好き

D

さてと最近はコードの短縮化を話題にしていましたがD言語の話題へ戻りましょう。 いまさらですが、dmd v 0.140が出ました。特に楽しそうなのはtemplateの引数に文字列と浮動少数が使えるようになった点。 今までだとtypedefを使う微妙なコードを書かなくては…

すげ−

現在1位が106byteです。すげー。勝てねぇ

C

さてと前回のコードには少し無駄があるので削りましょう。 二箇所削って124Bです。

コードを極限まで削れ

C

最近各所で皆が http://acm.pku.edu.cn/JudgeOnline/problemstatus?problem_id=1145&orderby=clen&language=-1 の問題の回答を極限まで無駄を省くという極限まで無駄なことをしています。 自分も挑戦してみたのでその記録。 以下激しくネタバレなので自分で…

すげーー

C

k.inabaさんのコード本気で凄い。 どう凄いかは本人のサイトで確認してくれ。 http://www.kmonos.net/wlog/55.php#_0018051126 久しぶりにコードを見て震えがした。 寝る直前なのにテンション上がりまくり。 以下、中身に触れた感想なので見たくない人はこの…

V0.138

D

とりあえずD言語V0.138のオモシロそうな機能として, "string"[constant]と"string"[constant..constant]が 定数になるというのが追加された。これを応用すると[id:kurimura:20050521]に書いた奴がよりスマートに書ける。 template ULtoString(ulong n,int b:…

v0.137

D

D言語に型推論 キタ━━(゜∀゜)━━ドキュメントを参考にすると、こんな風にやるみたい。 static x = 3;// x は int 型 auto y = 4u;// y は uint 型 const s = "string";// s は char[6]型 class C { ... } auto c = new C();// c は Cのハンドルのインスタン…

D言語 私用メモ現在の実装では下は末尾再帰の最適化が効かない。 class X{ void f(int n){ if(n==0)return; else return f(n-1); } }末尾再帰の最適化をしたい場合は class X{ final void f(int n){ if(n==0)return; else return f(n-1); } }と書く。 前者は…

やねう企画2005年度入社試験

今話題の[id:yaneurao:20050929]の入社試験の問題に暇なので参加 気づいたのが大学の昼休みの終わり頃だったので、 当然の如く、始まった大学の講義を無視してコードを書く。 問1の結果は○最初にいくつか計算していきなり答えが分かってしまったが、 その答…

D

D言語のv1.33が出たみたい。 std.mathの関数にC言語の関数が追加されたらしい。あとは微妙なDdocの微妙な変更。(まだ試してないんでよく知らんけど)

明日から大学の後期授業。 だるい。

D言語 v1.32

D

今回は非常に微妙なDdocが追加されたのみ。 使ってみたけど正直微妙。 今の段階では、まだDoxygenのほうを自分なら使う。

""c in a

D

void main(){ void[char[]]a; ""cin a; }これが通るのは、バグのような気もするが、 仕様のような気もするので気にしないでおこう。

Dに望むもの

D

関数テンプレートが欲しい。 関数内関数を関数外に出ても有効になるようにして欲しい。 *演算子(参照外し)のオーバーロードを出来るようにして欲しい。 functionとdelegateを統一して欲しい。別に今あげた機能は無くても問題無いですが、凄く欲しい機能。 た…

試験結果

学業成績概要のお知らせが来た。 本年度の試験結果 11科目(26単位) 受験した科目 11科目(26単位) 合格した科目 00科目(00単位) 不合格科目 02科目(04単位) 受験しなかった科目 <参考>在籍している学科・年次の平均合格単位数は20単位です。 なんとか平均は超…

C++

ついでにC++版 #include<map> template<typename T>struct fix:T{}; template<typename T> struct memo:T{ std::map<int,int>memo_; int operator()(int n){ std::map<int,int>::iterator it = memo_.find(n); if(it != memo_.end())return it->second; int value = T::operator()(n); return memo_[n] = val</int,int></int,int></typename></typename></map>…

D

昨日の物(http://www.kmonos.net/wlog/52.php#_0212050903)は 継承を使うのが一番自然と気づいたので追加。 template fix(T){alias T fix;} class memo(T):T{ int memo[int]; int opCall(int a){ int*p = a in memo; return !p?memo[a] = super.opCall(a):*p…

追加 非template版

せっかくだからテンプレートを使わずに書いてみる。 関数内関数は関数外に出たら無効になるという嫌すぎな仕様があるので泣く泣く自力で使う変数を退避。 あとD言語はfunctionとdelegateを統合して欲しい。使い分けがメンドくさいから int delegate(int) fix…