第1回 †
レベル1,2の問題はEPOCH@まつやまのサイトで公開されているものを使用することにしました。
各自、「本選第1ステージ問題」「本選最終ステージ問題」をDLしといてください。
問題に対する入力はテキストファイルがコマンドライン引数に与えられるものとし、
出力は標準出力を使用するものとします。
レベル1 †
3問中、得点の高かった2問の合計で評価します。
例外処理はしなくてもいいですが、されていたら加点します。
問題 †
第1ステージの問題より、「素因数分解」「欠席者を探せ」。
最終ステージの問題より、「為替レート」。
質問等 †
レベル2 †
2問中、得点の高かった方の得点で評価します。
問題 †
最終ステージの問題より、「合計額は何通り?」「ビンゴ」。
質問等 †
レベル3 †
オリジナル問題です。
問題 †
pampamさん家の蔵書整理
pampamさんはたくさんの本を持っています。しかし最近本棚がいっぱいになってきたので 蔵書を整理することにしました。
以下のルールで、pampamさんの蔵書を整理してください。
- 本は、「タイトル名」「巻数」「著者名」の情報で管理する。
- 本の情報がすべて同じ場合、同じ本とする。
- 整理の仕方は、「著者名」の辞書順(あいうえお順)とする。
- 「著者名」が同じ場合は「タイトル名」の辞書順、「タイトル名」が同じ場合は「巻数」の昇順(小さい順)とする。
- 同じ本が複数ある場合は1冊だけ残して残りを古本屋に売る。古本屋での本の買い取り価格は、1冊50円とする。
- 「タイトル名」「著者名」が同じで1巻目から5巻以上連続しているものは1冊当たりの買い取り価格が1.5倍になる。
入力は最初の行は本の冊数。次の行から1行ごとに本1冊の情報「タイトル名」「巻数」「著者名」が ,(カンマ) で区切られて与えられます。
ただし、連作でない場合の「巻数」は0(ゼロ)で表すものとします。
入力例:
4
坊っちゃん,1,夏目漱石
ウサギとカメ,0,イソップ
坊っちゃん,2,夏目漱石
坊っちゃん,1,夏目漱石
出力は、整理後の本の情報を入力時と同様の形式で出力してください。
また「最後に重複した本を売ったお金の合計」と、そのお金で「はいから亭のSセット(500円)が何回食べれるか」も出力してください。
出力例:
3
ウサギとカメ,0,イソップ
坊っちゃん,1,夏目漱石
坊っちゃん,2,夏目漱石
50
0
質問等 †
- 辞書順について質問がありましたがここでの辞書順とは国語的な意味ではなく、コンピュータサイエンス的な辞書順(lexicographic order)です -- formula
諸連絡 †
提出先 †
formula1110@gまいl。こm
にzipファイルを添付して送ってください。
サブジェクトは「CSRプロコン1 L1 formula」のようにしてください。
提出期限 †
2008/01/07 24:00 までとします。
採点 †
採点は 2008/01/08 〜 2008/01/18 の間くらいにやる予定です。
結果発表は採点が終わり次第適当にWikiとかで。
結果発表 †
結果発表が遅くなってすみませんでした。しかも採点だけで模範解答は用意できませんでした。
今後余裕があれば模範解答を作りたいと思いますがいつになるやら。
ではレベルごとの結果発表をどうぞ。
レベル1 †
1位:KOUJI
「為替レート」:80点
「素因数分解」:80点
「欠席者を探せ」:75点
計 160点(上位2つの合計)
全体的にキレイなコードでした。規模が大きくなってもキレイさを維持しましょう。
変数名はできるだけ意味を表すものや慣例的なものにすると他人が理解しやすいです。
また、コメントはコード理解を助けるように書くことが大切です。
レベル3 †
1位:marishi
「pampamさん家の蔵書整理」:55点
計 55点
難しい問題でしたがチャレンジしてくれました。また、C++のSTL(Standard Template Library)にも挑戦していました。その調子でがんばりましょう。
慣れない内は小さな問題から少しずつ練習するといいかもしれません。
解答 †
遅くなりましたがレベル3の解答例を用意しました。
ページ下部の添付ファイルのリンクよりDownloadしてください。
C++でSTL使ってるので知らない人にはわかりにくいかもしれません。
質問は受け付けますのでわからないところなどあればメールください。
あと突貫工事になったので簡単なテストしかしてません。
間違いや改良できそうなところがあれば連絡していただけると助かります。
(08/02/23 追記)
レベル2の解答もUpしました。若干手抜きです。