10. 部長対決って本当ですか?
パソコン部の部室前で向かい合う競プロ部メンバーとパソコン部メンバー。競プロメンバーは私と早希、玲奈、枝刈先輩の四人。パソコン部メンバーは春崎先輩と木戸茜さんの二人。
「勝負の方法はどうしますか?」
私はパソコン部部長である春崎先輩に尋ねる。パソコン部と競プロ部の勝負となればやはりパソコン関連だろうか。それとも枝刈先輩のときと同じようにゲーム対決だろうか。ゲームだったらこちらには玲奈がいる。つまり絶対に勝てる。
春崎先輩は少し考えてから言った。
「競技プログラミングでいかがでしょうか」
私は驚く。
「競プロ!? いいんですか?」
「だってあなたたちは競プロ部でしょう? 私たちもパソコン部ですからね、プログラミングなら嗜んでいます。せっかくならあなたたちの土俵で闘ってあげましょう。パソコン部部長である私と競プロ部部長であるあなたの一騎打ち、それでいかがかしら?」
不敵に笑う春崎先輩。その笑顔はまさにサイコパスと呼ぶにふさわしかった。
部長の一騎打ちはまずい、と私は思った。なぜなら私は競プロ部部長でありながら、競プロが全然できないからである。相手はパソコン部の三年生、さっきの話が本当ならそこそこプログラミングができるということだ。それに対して私はプログラミング初心者。相手になるはずがない。
困った私は助けを求めるために早希を見る。しかし、早希は「詩織、お前なら大丈夫だ!」と親指を立てている。そして玲奈も同じくサムズアップをしている。私なんかよりも玲奈が勝負をしたほうがいいに決まっている。しかし、玲奈は私に任せるつもりらしい。本当にいいのだろうか。負けたら競プロ部は廃部になってしまうというのに。
「枝刈先輩、どうしたら……」
最後の砦である枝刈先輩を見ると、先輩はやっぱり他人事のような顔をしていた。「私、ゲーム研究部だし」と言いたそうだ。
もうなんだっていいや。投げやりになった。
「わ、わかりました。競プロで勝負しましょう!」
言ってしまった。
■■■■■■
私と春崎先輩は向かい合って席に着いた。それぞれ目の前にはデスクトップのパソコンが一台ずつある。私はブラウザソフトを立ち上げて競プロのウェブサイトにアクセスする。過去問で勝負をするのだ。
「小流さん、あなたが今使っているパソコンが、あなたが勝った時に渡すパソコンです。大事に使ってあげてくださいね」
「このパソコンが……わかりました」
「それでは制限時間は三十分。その間に多くの点数を稼いだほうが勝利です。いいですね」
「あっ、えっと、本を読みながら解くのはありですか?」
「本? いいですけど」
「ありがとうございます。じゃあ大丈夫です」
心は決まった。なぜか落ち着いてもいる。私は競技プログラミング初心者だが、一応少しだけ勉強はしたのだ。それに本も読んでいいなら勝機はある。まだ一問も解けたことはないのだけれど。
「じゃあ、私が時間を測りますね」
枝刈先輩がスマホを取り出す。
「よーい、始め!」
枝刈先輩の掛け声で勝負が始まった。始まってしまった。
私は過去問の一番易しいランクの問題を開く。
◇◇◇◇◇◇
太郎君はNページある本を毎日Kページずつ読むことができます。何日で読み終わるか求めなさい。
制約
1 <= N <= 1000
1 <= K <= 1000
入力
N K
出力
太郎君が本を読み終わるまでの日数を出力せよ。
◇◇◇◇◇◇
これは簡単な算数の問題だ、と私は直感した。つまり、100ページの本があったとして、毎日10ページ読むとしたら、100 / 10 = 10で10日で読み終わるということだ。
問題はこれをどうやってプログラムに書き起こすかということである。
落ち着け、まずはコピー&ペーストだ。玲奈に教えてもらったコードをコピペする。
◆◆◆◆◆◆
#include <bits/stdc++.h>
using namespace std;
int main() {
}
◆◆◆◆◆◆
そしてこの「main関数」にコードを書いていけばいいはずだ。まずは入力の処理から。競プロの本を読みながら入力のコードを書いていく。
◆◆◆◆◆◆
#include <bits/stdc++.h>
using namespace std;
int main() {
int n, k;
cin >> n >> k;
}
◆◆◆◆◆◆
これで入力ができたはずだ。どうやって確かめればいいのか分からないから、できていると信じるしかない。
それであとは割り算をすればいいだけだ。
◆◆◆◆◆◆
#include <bits/stdc++.h>
using namespace std;
int main() {
int n, k;
cin >> n >> k;
cout << (n/k) << endl;
}
◆◆◆◆◆◆
「……書けた……」
これが私が初めて自分で書いたコード。初めての競技プログラミング。これをウェブサイトに提出したら正解になるはずだ。私は震える手でマウスを操作しながら自分が書いたコードをコピペした。そして「提出」ボタンをクリックする。お願いします、正解して!
『WA』
そこにはプログラムが間違っていることを示す「WA」という文字が表示されていた。
■■■つづく■■■
新規登録で充実の読書を
- マイページ
- 読書の状況から作品を自動で分類して簡単に管理できる
- 小説の未読話数がひと目でわかり前回の続きから読める
- フォローしたユーザーの活動を追える
- 通知
- 小説の更新や作者の新作の情報を受け取れる
- 閲覧履歴
- 以前読んだ小説が一覧で見つけやすい
アカウントをお持ちの方はログイン
ビューワー設定
文字サイズ
背景色
フォント
組み方向
機能をオンにすると、画面の下部をタップする度に自動的にスクロールして読み進められます。
応援すると応援コメントも書けます