C

Partition Function

今日は大晦日。また新しい年が来る。来年は、個人的には大変良い年となる。 さて、ゴルフ。 Partition Function なかなか面白い問題だったと思う。wikipedia 等より、Partition Function p(n) は以下のように表されることがわかる。 P(k,n)=0 if k>n -- (1) …

Line counter

Line counter が公開になった。この問題、出力が 7 と 1 と 8 だけなので、「また、くだらない embed/random 問題かぁ」っと思ったが、行数を数える、ということ自体は、ゴルフとしては割と面白いと思ったので、“真面目に”やってみた。 vi vi はいろいろな解…

Hello broken keyboard

Hello broken keyboard が終了した。近年まれに見る盛り上がりだった。 C トップ shinh さん@12.336B。 a;m;t;main(){ a++;a++;a++;m++;t++; n(++t+a+t*a*t*a);i(t);i(a*a);i(a*a);i(a*t*t);n(t*t+a*a);n(m); i(t+a*t*a);i(a*t*t);i(a*(t+a));i(a*a);i(m);n(…

String Halving

昨晩、String Halving が終了した。面白い問題だった。 sed sedは結構コンパクトにできたな(83B)と思っていたら、tails さん@70B にあっさり抜かれた。 この問題は、文字列を2分割して、それぞれを中かっこで囲えばいいのだが、2分割するところが工夫のい…

Trianglular Text終了

Triangular Text が終了。公開された。幾何的要素が入った問題は、好きだし面白い。 C言語では、nai さんが、58B でぶっちぎりトップだった。相変わらず強いな。 scanf()では、 scanf("%1s",&c)で、空白・改行を読み飛ばせるのか。お恥ずかしながら知らなか…

Triangular Text など

Google がスマホで手書き入力できるようになった。なかなかいい感じ。手書き+入力補完というのは、使いやすいな。ただ、試しに、nn_x と手書きで入れようとしたら、どうしても、_ (underscore) が、- (hyphen) になってしまう。何かいい方法があるのかな?…

group elements

先ほど group elements が終了し、公開となった。正規表現のある言語、js や Groovy や sed では、解答は、straightforward だ。たいして面白味もない。 また awk でも打った。久しくやっていないのでためらったが、awk の正規表現には、括弧によるグルーピ…

最近のあなごる問題

ICUP 少し難しすぎ。JavaScript と C で参戦したが、あまり感想も無い。ちょっと気になったのはロジックが癖があり、例えば、スペースが3つ空いているところと、4つ空いているところがあった場合、先に見つかったほう(つまり、より左側にある方)が選ばれ…

あなごる

4 9 skip numbers パッと見、面倒そうと思ったけど、でも結局8進数なんだとわかったら短い解ができた。 68B@C by leonidさん。 k;main(c){for(;read(0,&c,1);)k=c-10?k*8+c%47*4/5:!printf("%d\n",k);}'c%47*4/5' の部分。なるほど。さすがです。 guess wha…

あなごる

最近仕事が忙しく、あなごる参戦やこの日記がおろそかになっている。正常といえば正常だけど。 I love you この問題は、記述がわかりにくいが、結局、 128*e**490だ。タイトルの意味が未だわからず。215桁あるので、large numberのサポートが無い言語だと難…

最近のあなごる

あなごるサーバーにサブミットすると時々、IO error だったか、connection できないといったエラーが返る時がある。しばらくすると、あなごるサーバーが完全にダウンしたりしていた。今年になって2度ほどあったように思う。 2月初めには東証のシステムダウ…

Quixey Challenge

Quixey Challenge 終了。 inaniwa さん 53B とは 1B 差で、似たような手だろうな、っと思っていたら、いや〜びっくり、凄い解答だ。 s;main(){read(0,&s,&s+63);printf("%.245sincomin%s");}read() と printf() の第二、第三引数を合わせ、こんな使い方をす…

edge of cuboid

edge of cuboid 終了。C は、Rolling division に続き、vprintf() だった。以下、トップ nai さんの解。inaniwa さんも同じだ。 main(a,b,c){for(;~scanf("%d %d %d\n",&a,&b,&c);vprintf())a/=b/=c=sqrt(c*b/a);}これは凄いな。基本は前の日記(Rolling divi…

Rolling division

Rolling division。C のための問題という感じだった。トップ nai さん 74B、2位 inaniwa さん 75B と3位の私の 76B 解。 74B: main(i){for(i=-gets(&i)%3+2*atoi();i-1;i=i/2+i%4/3)printf("%.1f\n",i*.5);} 75B: main(a){for(a=4*atoi(gets(&a))+a%3;a-2;…

HTML paragraph

新年だ。今年も気長に Anarchy Golf の話を中心に書いていこうと思う。 さて、HTML paragraph。A Japanese counting system の問題説明中に書いた『正』の字が、<pre> で囲まなかったために潰れてしまった。でもこの程度で、shinh さんのお手を煩わすのはもうしわ</pre>…

久しぶりのアップデート

Average Character C nai さんがトップ 64B を出し、何とか追いついて 64B を打ち、inaniwa さんも 64B を出したので、64B で頭打ちかと思ったら、nai さんが for ループで私が再帰。組み合わせたら、63B by naiさんがでた。toggleCASE の時と全く同じパター…

最近のあなごる問題

sort by first occurrence js トップ 0mg さんの 64B 解。 for(r=readline;s=r();)r[s]=[r[s]]+s+"\n";for(s in r)putstr(r[s])まず、 r[s]=[r[s]]+s+"\n"この部分。[ r[s] ] は、r[s] が undefined の時、"" (null string) になる。murky-satyr さんが Basi…

Smileys Triangle

あなごる日記もマンネリ化してきた(って別に問題ないけど)ので、ここらで趣向を変えて、過去の endless 問題の解答を晒してみる。 あなごる初期の名問の一つ、Smileys Triangle 。 24B@vi vi は、トップは pla さんで、22B だ。しかも、全言語通してトップ…

122333

122333 が先ほど終了した。なかなかの良問だ。おもしろかった。ただ、Sample Input #3 が、たぶん、8bit の立った右ページのコードを含んでいるようだ。そのため、Groovy では、#3 だけうまく扱えず、解答できずじまい。 C C は 63B 出したとき、勝った!と…

Factoradic Decoder

#久しぶりのブログ更新。ずいぶん間が空いてしまった。 一連の、Factoradic 問題が先ほど終了した。その中で、Factoradic Decoder では、C言語で、79B@hinoe さんに 3B 差で負けた。hinoe さんの解を見ると、全体的な方針は同じだが for 文の一重化で差がつ…

Excess3 & binary increment

Excess3 not さん作の問題。not さんは、いつもいい問題をつくるな。 C C は 65B でトップを取れた。以下のコード。 i;main(c){for(;read(i%=4,&c,1);)putchar(c<11?c:c+3>>i--+3&1|48);} i;main(c){for(;read(i%=4,&c,1);)putchar(c<11?c:c+3>>3-i++&1|48);…

Joshephus or MamakoDate Sequence EASY

Joshephus or MamakoDate Sequence EASY はなかなか面白い問題だった。C トップのinaniwa さんの解は少し解読しようとしたけど、ちょっとわからないな。301 さんの解も同じアルゴリズムのようだ。いずれにせよ、配列になんらかデータを蓄積するのではなく、…

Power Set

ちょっと前に http://golf.shinh.org/p.rb?Power+Set が終了した。この問題は、Power Set の表現と数値(二進数)との対応関係に気付くと解答が得られる。つまり、 0: 0 1: {0} 2: {{0}} 3: {0, {0}} 4: {{{0}}} 5: {0, {{0}}} 6: {{0}, {{0}}} 7: {0, {0}, …

最近のあなごる

Difference of hinoe さんの C 解。以下の通り。 main(a,p)char*p;{for(;*++p||!gets(p=&a)-puts();)*p=p[1]?abs(p[1]-*p)+48:0;}この解の面白いところは、*++p の部分。for 文の一重化を行う際、キーとなることの一つに、変数の初期値がある。たとえば、上…

最近のあなごる問題

Deadfish、Ejection は、正直あまり興味なかった。Ejection は、著者に勝手に単純化したバージョン Ejection simplified を作成して投稿した。割と面白かったと思う。著者にはちょっと申し訳ない感じ。すみません。 Ejection simplified では、kou さんとち…

Function call expression & SQR

「いつまでも治らないバグ。迫りくるデッドライン。コードゴルフはじめました〜♪」 「MS11-022。あてたらパワポが使えない。コードゴルフはじめました〜♪」 「誰よりもDISK使うアンチバイラス。リブートしたらブルースクリーン。コードゴルフはじめました〜♪…

最近のあなごる

また、だいぶ日記が空いてしまった。 Integer Ranges 入力データに、291 という数があり、問題ミスかと思っていたが、 -1<<290とすると -1<<2と同じで、-4 になる。C だけでなく、JavaScript も Groovy も同じだった。なので、結果的に、291 という入力を特…

Bankers rounding

先ほど、Bankers rounding が終了した。この問題では、C で新たな発見(私にとっての)がいくつかあり、面白かった。 その1 printf() の "%.f" の丸めモードは、「最近接偶数へのまるめ」(と呼ぶのか)のようだ。本問のタイトル "Bankers' rounding" だ。端数…

最近のあなごる問題

ビンラディンの件はびっくり。アメリカはしばらく厳戒態勢なんだろうな。9・11みたいな報復がないことを祈っているが、株はちょっと売り払った。 さて、あなごるは、ここのところ問題が多い。まぁ、質の悪い問題も多いようだ。間違っているものは修正して…

最近の問題から

日記が滞りがちだ。なかなか継続は難しい。 Farey sequence Cはよく縮まり、最終的にnot さんの94B に追いついた。ロジックもほとんど同じだった。縮め甲斐のある面白い問題だった。因みに、88B(rand)解は以下のよう。 m=1,i;main(g,n){for(n%=9u;i%g+m%g?g-…