第1章

午前七時半。私はすでに情報工学棟の百二号室、その最前列中央の席についていた。

これが私の日常、三十分前に到着し、最高の学習効率を叩き出せる席を確保し、一分一秒も無駄にしない。ノートパソコンの画面では、昨夜書いた再帰アルゴリズムを最適化するコードが、びっしりと並んで踊っていた。

「この計算量なら、O(log n)まで削減できる……」私は呟き、キーボードの上で指を飛ばした。

午前八時ちょうど。教室のドアが乱暴に開け放たれ、突然の物音で穏やかな静寂が打ち破られた。

「なあ、昨日の沙耶香との件、どうだった?」

「聞くなよ。振られた。『遊び人だ』ってさ。マジありえねえ」

私は顔を上げずに眉をひそめた。自分が本当に何をしたいのかも分かっていない、またパリピの集団か。

視界の端で、一団が教室に入ってくるのが見えた。先頭を歩く男は長身で、鍛えられた体つきをしている。部活ジャケットを羽織り、いかにも体育会系といった自信をみなぎらせていた。彼の後ろには、同じような服装の男子が数人、そして明らかに彼目当ての女子が数人ついてきている。

私は画面を見つめ続けた。こんな退屈な社交ゲームは、私には何の関係もない。

「あの子、なかなか面白いじゃん」人を惹きつけるような声が聞こえた。

誰かが私を見ているのを感じたが、振り返る気はゼロだった。まるで博物館の展示物のように扱われるこの感覚は、吐き気がする。

「どの子? ああ、あれは村上明美、情報工学の女神だよ。やめとけって。どこの男にも見向きもしない氷の女王だぜ」

情報工学の女神? 氷の女王? 私は内心で鼻を鳴らした。なんて陳腐なレッテルだろう。私はただ、自分が何を求めているか分かっていて、無意味な社交活動に目標達成の邪魔をされたくないだけだ。

松本教授が教室に入ってくると、即座に静寂が訪れた。私はデバッグ中のコードを閉じ、集中して講義を聴く準備をした。

「皆さん、おはようございます。松本です。情報工学入門へようこそ」教授は教材を置き、教室を見渡した。「この講義では、皆さんに計算論的思考を身につけてもらい、基本的なアルゴリズム設計をマスターしてもらいます。文系理系を問わず、ここで情報工学の面白さを発見できるでしょう」

彼は黒板にいくつかのキーワードを書き出した。アルゴリズム、データ構造、問題解決。

私はペンを取り、ノートを取る準備をした。

「今日は早速、皆さんに実践的な感覚を掴んでもらうため、最初のプログラミング課題を出します」教授は学生たちの方に向き直った。「基本的なアルゴリズムのプロジェクトで、二人一組で完成させてもらいます。締め切りは来週の金曜日。今からチームを作ってください」

ペア? 私のペンが止まった。チームワークなんて、私の効率的な学習計画には存在しない、他人は私の足手まといになるだけだ。

教室はすぐに活気づき、学生たちはパートナーを探し始めた。私は眉をひそめ、教授に個人での作業许可を願い出るべきか考えた。

立ち上がろうとした、ちょうどその時。私の机のそばに人影が現れた。

顔を上げると、先ほど「なあ」と呼ばれていた体育会系の彼が目の前に立っていた。近くで見ると、確かに整った顔立ちをしている。身長は百九十センチはありそうで、目鼻立ちははっきりしており、深いブラウンの瞳と、数多の女子を悲鳴させるあのチャーミングな笑顔を持っている。

「やあ、俺は山崎拓也」彼は完璧に練習されたであろうその笑顔を向け、深く魅力的な声で言った。「俺と組まない?」

私は容赦なく返した。

「あなたのことは知っています。でも、結構です」

彼の笑顔が一瞬、凍りついた。明らかに、これほど直接的な拒絶は予想していなかったのだろう。

どうやらこの学内のスターは、「ノー」という言葉を聞き慣れていないらしい。私は自分のパソコンの画面を彼に向け、すでに完成させていたコードを見せた。

「教授が要求した基本バージョンはもう終わっています。今は、より高度な最適化に取り組んでいるところです」

拓也は、まるで宇宙人でも見るかのような目で目を見開いた。彼にとって、このコードは本当に宇宙語のように見えたのだろう。

「もう……終わらせたのか?」彼は驚愕の声を上げた。

「基本バージョンだけです。単純なものですから」

私は淡々と答えた。この程度のアルゴリズム実装は、真面目に勉強していれば誰でもできる、大して難しいことではない。

その時、松本教授が私たちの状況に気づき、歩み寄ってきた。

「明美君、ペアは必須だと言ったはずだ。例外はないよ」

やれやれ、仕方ないな。私は内心でため息をついた――どうやら逃げ道はないらしい。拓也の方を向き、明確な協力体制のルールを定めることにした。

「分かりました。でも、条件があります」

「どんな条件だ?」彼は目を輝かせ、期待を込めて尋ねた。

私は紙とペンを取り出し、詳細なプロジェクトのタイムラインを素早く書き出した。各フェーズのタスク分担、完了時間、品質基準.......すべてを明確に記した。

「これが私たちのスケジュールです」私はその紙を彼の方に押しやった。「あなたは自分の担当部分を時間通りに終わらせてくれさえすればいい。遅延も、面倒なこともなし。私がコアアルゴリズムとシステム統合を担当します」

拓也は紙を受け取って私のタイムラインに目を通し、次第に驚きの表情を浮かべていった。彼には厳しすぎると映るかもしれないが、効率的な共同作業には明確なルールが必要なのだ。

「その前に、まずはお互いを知るところから始めないか?」彼は探るように言った。「連絡先を交換するとか、さ……」

「自己紹介が課題の完成に役立つとは思えません」

私は冷たく彼の言葉を遮った。そんな口説き文句は私には通用しない。

「番号は教えますが、プロジェクトに関する連絡専用です」

紙切れに自分の番号と、その利用ガイドライン――『緊急時を除き、業務時間内のみ連絡のこと』――をきれいに書き添えた。

拓也はそのメモを受け取ると、私の追記を見て思わず笑い出した。

「業務時間? 学校の課題だろ、会社で働いてるわけじゃあるまいし」

私は眼鏡の位置を直し、真剣な眼差しで彼を見た。

「私は計画通りに作業を進めるのに慣れています。あなたの先延ばし癖が、私たちの進捗に影響するのは困ります」

彼は少し驚いたようだったが、むしろ好都合だ。これでプロジェクトの完成により集中できる。

「いつから始める?」と彼が尋ねた。

「今です」

私はすでに新しいドキュメントを開き、要件分析を始めていた。

「これが機能の分解図です。あなたはデータ入力モジュールとユーザーインターフェースを担当。私はコアアルゴリズムと出力処理を担当します」

キーボードを素早く叩き、数分でプロジェクトの全体的な骨組みを構築した。拓也は画面上で絶えず更新されていくコードを眺め、どこか呆気にとられているようだった。

「お前……すげえな」彼は心からそう言った。

私は顔を上げなかった。

「当然知っておくべき、基礎知識です」

授業終了のベルが鳴った。私はパソコンを閉じ、ノートを整理した。他の学生たちも帰り支度を始め、教室は再び騒がしくなった。

「じゃあ、明日は図書館で会うか?」拓也が尋ねた。

「その必要はありません」私はバックパックを肩にかけた。「詳細な要件はあなたのメールに送ります。自分の寮で担当部分を完成させてください。質問があればメールかテキストで。電話はしないでください」

私はまっすぐドアに向かって歩き出した。拓也がまだその場に立ち尽くし、今起きたことすべてを処理しようとしているのを感じながら。

教室を出て、私は深く息を吸った。この共同作業が、私に余計な手間をかけさせることなく、スムーズに進むことを願う。

しかし正直なところ、拓也の反応は少し予想外だった。私に拒絶されたほとんどの男は、それとなく身を引いていく。だが、彼の瞳にあったあの屈しない光は……。

まあ、いい。彼が時間通りに自分のタスクをこなせるのであれば、それで。私は頭を振り、その考えを追い払った。

私にはもっと重要なことがある――午後の応用アルゴリズムの授業、今夜のデータ構造論の試験準備、そして私が取り組んでいるいくつかのプログラミングプロジェクトの最適化。

拓也は、私の人生計画において何の位置も占めることのない、一時的な協力者に過ぎない。

少なくとも、その時の私はそう思っていた。

次のチャプター