あなごる

472. Excess3

Active problemsが切れていたので久しぶりの出題。 簡単だけどちょっと考える問題…のつもりです。 結果はループ4回につき1回だけ読み込むという発想が出ずに惨敗。 10バイトも差があるんだから入出力の方法から見直すべきでした。 そういえばあなごるに出…

462. Power Set

お久しぶりです。もうちょっと頻繁に更新しよう・・・。久しぶりにmain再帰を書いた気がします。入力がなくなったらgetchar()は-1を返すことを利用して再帰した後は0で左シフトしていきました。ポイントとなったのは0を出力するタイミングで、関数から出ると…

387. toggleCASE

アルゴリズム的にはbox paintと似てるなと思ったのでこれを元にして書きました。 最終的にみんな同じコードにたどり着いたのかと思いきや、全員違うという珍しいことが起きました。 注目すべきはnnさんが発見したmain再帰を使うと短くなるという点。 普通mai…

368. permutation date

Permutationsを元にして書きました。 (さらに元をたどるとN Queensですが。) deadline後、nnさんが113バイトまで縮めました。 ポイントは2つ。 ・引数に0.を入れることで引数の数を3つから2つに削減 ・d++再帰の終了条件にもなる 1つ目は僕の凡ミスで…

363. Squares Fixed

hosと競い合っているうちにぐんぐんコードが縮んでいきました。 最初は今の行と一行前の行の文字列をそれぞれ配列に持っていましたが、一つの配列をどんどん使っていくと上手く行きました。 (この方法を思いついた時、Brainfuckみたいだなーと思いました。…

このコードがすごい! 2010 小テク部門

inaniwaさんのブログに便乗してすごい小テクを使っているコードを選んでみました。 a prime number by 51b main(n){for(;printf("%.d",83-n++););} printf("%.d",0)が何も出力しないという仕様。 (inaniwaさんもほぼ同じコードを書いてますがこのテクニック…

366. Divide section

なかなかagliasさんに追いつくことができなくて苦しみました。 基本的な考え方は最初に思いついたとおりで、ループを一重化して細かいところを削って削って追いついた感じです。 これで最短かな?と思ったらまだ縮められました。 最近細かいところを縮めきる…

362. Christmas tree

いろんな解き方があった問題です。 僕は最初からputchar()を使う方法ばっかり考えていたので他の人もそうかなと思ったらまったく違いました。 僕のコードはもう縮まないと思ってたんですがt=・・・?t:・・・というのが盲点でした。 tにtを代入するというのは…

356. partition by parity

終了間際にドタ参して1位取ってすいません。ちょっと最近忙しかったので・・・。 ループカウンタの動かし方がいろいろあって面白かったです。

350. Bigger power of two

約3カ月ぶりに問題を作りました。 この問題の元ネタは「ハッカーのたのしみ」の3-2の「次の2の冪乗への切り上げ/切り下げ」です。 「ハッカーのたのしみ」に上手いアルゴリズムが載っていなかったのでショートコーダーならどう書くかなと思って問題にして…

238. Negatenary

お久しぶりです。 最近忙しかったりあんまりコードが縮まなかったりであなごるに参加できてないです。 というわけで生存報告の代わりに過去の問題のコードを公開します。

337. Fibonacci Number

70バイトのコードです。

333. Totient

inaniwaさんとだいたい同じコードでしたが、2箇所縮めきれてなかったです。 最近こういうミスが多いです。ちゃんと考えないと。

337. Fibonacci Number

54Bのコードが通る確率は1/729です。 「274. Collatz Problem」の時のあれです。 (not rand)の方はちょっとひねって書いたので空白がありません。 実は微妙にうまくいかなかったので5Bぐらい損してるんですが。 1週間ぐらいしたらコードをこのブログに書き…

333. Totient

timeoutしないようにするので精一杯で最初のコードから本質的には何も変わっていません。 どう見ても無駄な部分があるのでそこを消せるかどうか考え中です。

332. Soroban Fixed

read()した段階で負けでした。 read()だと最後に改行が入ってgets()だと0x00が入るってことぐらいそろそろ覚えようよ・・・。 他もいろいろと工夫が足りなかったようです。

331. Triangle

inaniwaさんとはちょっと計算方法が違いました。 うーん、深く考えてなかったな・・・。

328. base convert

nnさんの解は予想外でした。 main再帰だと思い込んでいて他の方法は考えていなかったです。

326. box paint

inaniwaさんがブログでビットシフトについて書かれていたのでちょっと調べてみました。 ・数値の場合 main(){printf("%d %d %d",1<<32,2<<31,2<<-1);} 0 0 1 そのまま計算されている。 ・変数の場合 a=1;b=32;c=2;d=31;e=2;f=-1; main(){printf("%d %d %d",a<

328. base convert

82バイトは割とさくっと書けましたがここから縮むかどうか…。

326. box paint

ごちゃごちゃと数値をいじくっていたらきれいに書けました。 可読性は著しく低いですが。 cは10,32,35のどれかなのでa

327. next odd number

常連の人以外はなかなか50バイトを出していないのをみると、gets()+atoi()はあまり浸透してないみたいですね。

323. Sharkovskii order

お久しぶりです。まぁあなごるにはいましたけど。 Sharkovskii orderは変な方向にひねってしまった感のある問題でした。すいません。 で、naiが異常に短いコードを出してたわけですが、まさかmain関数をqsortの引数にするとは…。脱帽。

323. Sharkovskii order

Sharkovskii orderを出題しました。 Sharkovskii orderというのはSharkovskii's theoremに出てくる順序で、 「f:R→Rが連続で素周期nの周期点を持つとすると、Sharkovskii orderでn

321. add_sub_brainfuck_code

ちょっと忙しくてバタバタしているうちに終わってしまいました。残念。 8バイトも差があったので入出力関数が違うんだろうなと思っていたらreadでした。 read(1,&c,1)って-1を返すんですね。知らなかった…。 0を返すと思い込んでいて完全に盲点になってまし…

307. Zigzag

こういう問題nnさんが好きそうだなと思ったらやっぱりnnさんの出題でした。 inaniwaさんのコードが異常に短かったのでまぁ乱数だろうなとは思ってたんですが、文字が38-n/2で求まるのは気付かなかったです。 最近単独トップとれてないなって思って調べたらTe…

305. Factorization corrected

普通に2次方程式の解の公式を用いれば82Bにはなるのでそこからどれだけ縮めれるかですが…。 実はyvlさんと同じコードを思いついていたのに勘違いして縮まないなぁと思ってsubmitしていませんでした。orz。 最短コードは""-6という高級魔法を使っていました…

あなごる問題案

「Longest PI」 入力:なし 出力:π これはShortestかもしれない。

301. Palindromic prime

終了しました。 他の人の90Bのコードは予想とは違って怪しげなアルゴリズムを使っていました。 Timeまで酷似していたので同じアルゴリズムだと思っていたんだけどな。 僕のは3つのfor文を1つにたたきこむという強引なコード。 予想以上に面白い問題だっ…

301. Palindromic prime

90バイトで3人並ぶという面白い展開になっている。 しかもまだ縮みそうな感じがするので誰かが抜け出すかも。 他の人のコードは再現できているのでその点では安心しているんだけど。