夏休みプチプログラミングコンテスト2018 その1
前回までのあらすじ
夏休みプチプログラミングコンテスト2018に参加してみようと思った私だったが、競技プログラミング以外でプログラミングをしたことがないことに気づいた。
せっかくなので、「プロ生ちゃん界隈且つ非競プロer」に対して、競プロの紹介のようなこともしつつ、コンテストに参加しようとなった。
問題、あるいは今回の制作物
『趣味焼ちゃんは夏休みの宿題を夏休み明けの初日に出さなければなりません。夏休みの残りの日数がN日、宿題の総量がTで、趣味焼ちゃんが1日に片づけられる宿題の量がCの時、夏休み中に宿題を終えられるならYesを、終わらないならNoを出力しなさい。なお、入力は1行でN,T,Cの順に半角空白区切りで与えられます。』
『入力 N T C』(1<=N<=31,0<=T<=10^9,0<=C<=10^9)
『入力例1) 31 90 3』
『出力例1) Yes』
趣味焼ちゃんは、毎日計画的にこなすことで、宿題を終えられます。
『入力例2) 1 2 1』
『出力例2) No』
趣味焼ちゃんが宿題を終えるには、この夏休みはあまりに短すぎる。
ソースコード
<?php
list($n,$t,$c)=explode(" ",trim(fgets(STDIN)));
echo ($n*$c>=$t)?"Yes":"No";
?>
説明書きのようなもの
ということで、夏休みの日数、宿題の総量、1日にこなせる宿題の量が1行に半角空白区切りで与えられた場合に、宿題が終わるかどうかを判定するプログラムが書けましたね。(入出力例は上と同じなので割愛しました。)
競プロの(あるいはAtCoderの)特徴として、どこかで聞いたことのある名前に近いものが出てくることがあります。(例えばatcodeer君はトナカイとシカがいます。)(余談ですが、プロ生ちゃんのプロはプログラミングのプロですね。)
たぶんAtCoderでこの問題に近いものが出るとしたらABCのA問題(100点)だと思います。(何故これを書いたかというと、「時間をかけるべき問題ではないので、ソースコードがいわゆる『競プロerの書く1文字変数等を含んだ読みづらいコード』に近づいています。」という言い訳のためです。実際の上位陣はもう少し読みやすいコードを書いてると思います。(ただし、コードゴルフ勢は除く。)知らんけど)
ということで
もしこれを見て競プロに興味を持った方がいたら、ぜひ1度AtCoderを覗いてみてください。また、もしこれを見て興味を持てなかった方がいたら、やはり1度AtCoderで本物の競プロに触れてみてもらえると嬉しいです。
いよいよ8月なので、私もプチプロ2018の期間に競プロ以外のコードを書いてみたいですね。