確認せずに投稿してしまいましたが、あーるさんがギリギリで投稿していました。
なので、修正させてもらいました。
#第11回[L.C.M.]#
[問題]
3つの数字が入力されるので、その数字の最小公倍数を出力するようにしてください。
(今回の解答は五反田宛にお願いいたします。)
[入力|例1]
2 6 15
[出力|例1]
30\n
[入力|例2]
3 4 5
[出力|例2]
60\n
[入力|例3]
14 3 15
[出力|例3]
210\n
[期間]
12/18(土)22:00 ~ 12月25日(土)21:59
[hr]
=結果=
投稿数 9件(3人)
1位 (76B)
みけCAT さん
a,b,d;main(c){for(scanf("%d%d%d",&a,&b,&c);d+=c,d%a|d%b;);printf("%d\n",d);}
2位 (78B)
あーる さん
main(i,a,b,c){for(scanf("%d%d%d",&a,&b,&c);i%a|i%b|i%c;)++i;printf("%d\n",i);}
*1位1番乗り
みけCAT さん
[hr]
★解説
今回のポイントは関数を作らないで答えを求めることだったと思います。
また、for文の初期化部分、終了判定を出来るだけ上手に無駄なく利用するのがミソだったのではないでしょうか?
自分が考えていた想定解はこのようなものだったのですが、見事みけCATさんは超えてしまいましたね。(77B)
a,b,i;main(c){for(scanf("%d%d%d",&a,&b,&c);++i%a|i%b|i%c;);printf("%d\n",i);}
興味が出てきたら、コミュニティ「Code Golf を楽しもう」まで!
初心者歓迎、参戦&観戦いつでもお待ちしています!
http://dixq.net/forum/viewforum.php?f=52
第11回 mixC++ Code Golf 結果報告
第11回 mixC++ Code Golf 結果報告
最後に編集したユーザー 五反田 on 2010年12月25日(土) 22:05 [ 編集 1 回目 ]
- あーる@Reputeless
- 記事: 84
- 登録日時: 15年前
Re: 第11回 mixC++ Code Golf 結果報告
ぬぬぬ、中間発表で余裕こいてたらこのあり様 ^q^
みけCATさんには ぜひとも常連ランカーになっていただきたいな。
みけCATさんには ぜひとも常連ランカーになっていただきたいな。
Re: 第11回 mixC++ Code Golf 結果報告
なんかもう色々無理すぎて…結局100Bどころか120Bを切れなかった自分は頭が固いようだorz
Re: 第11回 mixC++ Code Golf 結果報告
上位の人たちは一体どんな頭をしてるんだ
あーるさんと五反田さんが同じやり方・・・思いついて普通なのかな・・・
>沖 滉均さん
私もです・・・
結局100B切れず(-_-;)
ユークリッド使ってそこから求めてましたからね(笑)
あーるさんと五反田さんが同じやり方・・・思いついて普通なのかな・・・
>沖 滉均さん
私もです・・・
結局100B切れず(-_-;)
ユークリッド使ってそこから求めてましたからね(笑)
Re: 第11回 mixC++ Code Golf 結果報告
>>あーるさん
惜しかったですね。
みけCATさんは強敵の予感です。
>>沖 滉均さん
まぁ、考えることに意味があるということで。
考えれば結果を知ったときの感動もひとしおですよ。
>>roxion1377さん
正直なところあーるさんが提出してきたような解が沢山出てきて、一位ばかりになるかと思ったのですが、難しい問題の流れだったせいか、
深読みしすぎた解答が多かったです。
惜しかったですね。
みけCATさんは強敵の予感です。
>>沖 滉均さん
まぁ、考えることに意味があるということで。
考えれば結果を知ったときの感動もひとしおですよ。
>>roxion1377さん
正直なところあーるさんが提出してきたような解が沢山出てきて、一位ばかりになるかと思ったのですが、難しい問題の流れだったせいか、
深読みしすぎた解答が多かったです。
Re: 第11回 mixC++ Code Golf 結果報告
大丈夫。私も最初はこんな感じでした。(104B)
a,b;g(x,y){return y?g(y,x%y):x;}main(c){scanf("%d%d%d",&a,&b,&c);b*=a/g(a,b);printf("%d\n",b/g(b,c)*c);}
a,b;g(x,y){return y?g(y,x%y):x;}main(c){scanf("%d%d%d",&a,&b,&c);b*=a/g(a,b);printf("%d\n",b/g(b,c)*c);}