プログラミング部門

競技内容

競技の概要

プログラミング部門では、プログラミングの知識と技術を競います。
制限時間内に出題された問題に対する解答プログラムを作成し、正解した問題ごとの得点の合計を競います。

競技は「予選」と「本選/もうひとつの本選」で構成されます。
「予選」は各参加校を会場として開催され、予選で選出されたチームは「本選」に進むことができます。
本選は会津大学を会場として開催され、優秀な成績を修めたチームには賞状と副賞が贈られます。

本選に進めなかったチームは、予選と同様の方法で、本選と並行して開催される「もうひとつの本選」に参加します。
「予選+本選」または「予選+もうひとつの本選」の合計得点が選手個人の総合成績として認定されます。

競技ルール

1

同一学校の2名の生徒でチームを構成します。

2

各生徒は、出題された問題に対する解答プログラムを考案・作成し、規定の競技環境(※)で実行し、正誤判定を得ます。
(※)競技環境の詳細については大会前に通知するほか、こちらを参照ください。

3

競技時間内に正解した問題数に基づいて生徒およびチームの得点が与えられ、チーム得点で順位を競います。

4

使用できるプログラミング言語はC、C++、Javaです。

競技要項

2024年7月31日に競技要項の改定版をアップロードしました。

競技要項

FAQ(よくある質問)

参加申込

申込方法

  • 学校長の許可を得た上で、担当教職員が「応募フォーム」よりお申し込みください。
  • 一校あたりの参加申込チーム数及び応募数に制限はありませんが、同一校から同一部門の本選への出場は2チームまでとさせていただきます。
参加申込受付期間 7月1日(月)~8月5日(月)

※申込状況は、パソコン甲子園のWebサイトトップページの「受付状況」にアップしますので、必ず確認してください。
10日以上経過しても応募の情報が反映されていない場合は、事務局までご連絡ください。

スケジュール

参加申込受付期間 7月1日(月)~8月5日(月)
予選 9月16日(月・祝)
本選出場チーム発表 9月24日(火)
本選 11月2日(土)・3日(日・祝)
もうひとつの本選 11月2日(土)

ソースコードの取り扱いについて

本大会で提出されたソースコードの著作権は参加者に帰属します。
競技者は、主催者が大会運営等に役立てる目的で、提出したソースコードを利用または公開する権利を許諾するものとします。

競技構成

予選について

開催日時 2024年9月16日(月・祝)13:30~16:30
競技会場 生徒が在籍する学校等
実施方法
  1. 競技問題の出題と解答プログラムの提出は所定のWebサイトで行われます。
  2. 制限時間は3時間です。
  3. 競技に使用するコンピュータ(原則として生徒1名につき1台)を含む競技環境は生徒が在籍する学校等が用意します。
  4. 競技中は、生徒間及びチームと第三者との競技に関する相談を禁止します。
  5. 各競技会場において監督者を配置してください。
    (ア)生徒が公正に競技していることを確認してください。
    (イ)生徒の健康管理を行ってください。
  6. 生徒が在籍する学校の学校長は、「実施報告書」を予選終了後速やかに提出してください。
個人成績

各生徒が予選で獲得した得点がそのまま各生徒の予選成績となります。

本選出場チーム選出方法
  1. 選出チーム数 
    30チーム程度
  2. 選出方法
    各生徒の予選成績の合計をチーム得点とし、以下のルールで本選出場チームを選出します。
    なお、同一校からの選出は最大2チームまでとします。
    (ア) 下記 (1)~(3)に基づく、成績上位 10チーム  
     (1) 得点が高いチームを上位とする。  
     (2) (1)において同得点の場合には、正解した問題に対する誤答回数が少ないチームを上位とする。  
     (3) (2)において誤答回数が同じ場合、より早くその得点に達したチームを上位とする。
    (イ) 成績と地域性を考慮した 20チーム程度
    (ウ) 女性同士または女性を含むチーム若干数。(最大2チームまでの制限は適用されません。)※追記しました。 ※今年度の変更点です。
  3. 結果通知
    選出の結果については、2024年9月24日(火)に、チーム名、学校名及びチーム番号をこちらにて発表します。
    また、本選出場チームには別途通知を発送します。
その他 予選にかかる経費(郵送料、通信費等)は参加者の負担とします。

本選について

開催日時 2024年11月2日(土)、3日(日・祝)
※競技は2日(土)13:45~17:45に実施します。
競技会場 会津大学内
実施方法
  1. 競技問題の出題と解答プログラムの提出は所定のWebサイトで行われます。
  2. 制限時間は4時間です。
  3. 競技に使用するコンピュータ(チームで1台)を含む競技環境は主催者側が準備します。その詳細は別途通知します。※今年度の変更点です。
  4. 競技中は、チーム内での競技に関する相談を推奨します。ただし、第三者との競技に関する相談は禁止します。
個人成績

本選で獲得したチーム得点が各生徒の本選成績となります。

順位付け 以下のルールでチーム得点および順位を決定します。
  1. チーム得点の高いチームを上位とする。
  2. チーム得点 が同じ場合には、正解した問題に対する誤答回数が少ないチームを上位とする。
  3. チーム得点が同じで、かつ誤答回数も同じ場合、より早くその得点に達したチームを上位とする。

もうひとつの本選について

開催日時 2024年11月2日(土)
※本選と同時開催
競技会場 生徒が在籍する学校等
実施方法
  1. 本選に準じた競技ルールにおいて実施いたします。
    (ア)競技問題の出題と解答プログラムの提出は所定のWebサイトで行われます。
    (イ)制限時間は4時間です。
  2. 競技に使用するコンピュータ(チームで1台)を含む競技環境は生徒が在籍する学校等が用意します。※今年度の変更点です。
  3. 各競技会場において監督者を配置してください。
    (ア)生徒が公正に競技していることを確認してください。
    (イ)生徒の健康管理を行ってください。
  4. 生徒が在籍する学校の学校長は、「実施報告書」をもうひとつの本選終了後速やかに提出してください。
成績

もうひとつの本選で獲得したチーム得点が各生徒のもうひとつの本選成績となります。

順位付け 本選に準じたルールにより決定します。

成績認定について

  1. 総合成績について

    参加した全ての生徒に総合成績書を発行します。
    ※本選に参加した学生の総合成績=「予選+本選」の成績
    ※もうひとつの本選に参加した学生の総合成績=「予選+もうひとつの本選」の成績

  2. 予選成績優秀者について

    予選成績が優秀であると主催者が認めたものは、予選成績優秀証が与えられます。
    予選成績優秀者には、会津大学の学校推薦型選抜における出願資格が与えられる予定です。

競技環境

競技者が使用する環境(本選)

※2024年10月時点の情報です。変更となる場合があります。

ハードウェア 型式 Lenovo ThinkCentre M80s
CPU Intel Core i5-10500 6C/12T (3.10GHz,12MB)
メモリ 16GB
ディスプレイ 液晶23.8inchモニタ(1920x1080)
キーボード 日本語108 キーボード
ソフトウェア OS Windows 10 Pro (64bit)
コンパイラ GNU Compiler Collection 11.2 gcc, g++ (cygwin 3.3.6)
OpenJDK 19
エディタ TeraPad 1.2.9  ※更新しました
コンパイル用コマンド
※審査環境と合わせるため、右記のコマンドを使ってください。(C/C++ではmath ライブラリーを利用することができます)
C gcc ソースファイル名 -o 実行ファイル名 -lm -O2
C++ g++ ソースファイル名 -o 実行ファイル名 -lm -O2
JAVA javac ソースファイル名

解答を審査する環境

※2024年9月時点の情報です。変更となる場合があります。

ハードウェア 型式 FUJITSU PRIMERGY RX2530 M5
CPU Intel(R) Xeon(R) Gold 6248R 8コア
メモリ 62GiB
ソフトウェア OS CentOS Stream 9 (64bit)
コンパイラ GNU Compiler Collection 14 (gcc 14.2, g++ 14.2)
OpenJDK 21
コンパイルコマンド C gcc ソースファイル名 -o 実行ファイル名 -lm -O2
C++ g++ ソースファイル名 -o 実行ファイル名 -lm -O2
JAVA javac ソースファイル名
実行コマンド C / C++ 実行ファイル名
JAVA java -Xms512m -Xmx512m -Xss64m クラスファイル名
制限
※解答プログラムが、実行時に右記の制限を超えた場合、プログラムを強制的に終了し、不正解とします。ただし、問題文で個別に指定されている場合はその制限が適用されます。
時間制限 5秒
メモリ制限 512 MByte
スタック制限(C,C++) 64 Mbyte
スタック制限(Java) 64 Mbyte

FAQ(よくある質問)

※印刷時はこちらをご利用ください。

【競技要項について】

Q1.パソコン甲子園の予選は個人戦ですか?

A1.各生徒が予選で獲得した得点がそのまま各生徒の予選成績となります。予選では相談はできませんが、予選当日だけでなく準備の段階からチームで教え合い、切磋琢磨してお互いのレベルアップを図ってください。

Q2.予選について、生徒はそれぞれが解答プログラムを考案・作成するのですか?

A2.予選では、チームのそれぞれが相談せず、別々に全ての問題を解きます。本選出場チームの選出には、2人の予選成績の合計を用います。

Q3.本選ではチーム内でどのような協力ができますか?

A3.本選では、チーム内での相談や分担などの協力が可能です。ただし、第三者との競技に関する相談は禁止します。

Q4.本選をチーム戦として実施する意図は何ですか?

A4.予選では個々のプログラミング能力を中心に競いますが、本選では限られた競技時間の中でどれだけ相談や分担ができるかという、
 コミュニケーションやチームワークの能力を含む、チームとしての総合力が試されます。

Q5.もうひとつの本選ではチーム内でどのような協力ができますか?

A5.もうひとつの本選の実施方法については本選に準じた競技ルールにおいて実施いたします。

Q6.総合成績について、本選出場チームに選出されなければ総合成績書は発行されないのですか?

A6.本選出場チームに選出されない場合でも、予選に参加した全てのチームはもうひとつの本選に出場できます。
 予選ともうひとつの本選の両方に参加した場合、総合成績書が発行されます。

Q7.予選成績優秀者はどの程度の人数に与えられるのですか?

A7.2023大会では、参加者の約20%に与えられました。

【プログラミング部門全般について】

Q8.COBOLやVisualC/C++などの言語は使用できないのですか?
A8.プログラミング部門競技要項に記載のある言語以外は使用できません。
Q9.プログラムの作成形式はどうなりますか?
A9.特に指定がない限り、問題の趣旨に沿った「コンソールアプリケーション」を作成してください。
  また、具体的な作成例は、「過去問」をご覧ください。

【予選について】

Q10.指定されたプログラミング部門の予選日に学校行事が予定されているため、別の日程で予選に参加することはできますか?
A10.予選は、所定の日程でのみ開催されます。別の日程にて参加することはできません。
Q11.学校で実施ができなくなった場合はどうすればいいですか?
A11.学校以外の場所を会場とすることも可能です。適切な会場をご検討ください。
Q12.教員の都合がつかず、監督できません。

A12.学校の判断において、適任な大人を監督者として配置して構いません。

Q13.感染症に罹患してしまったため、登校することができません。

A13.学校の判断において、学校以外の場所で適切な監督のもと参加することが可能です。

Q14.ビデオ会議システムを使って監督してもいいですか?
A14.単にビデオ会議システムによりモニターするだけでは適切に監督したとは認められません。
Q15.チームメンバーを間違えて登録してしまいました。変更は可能ですか?
A15.競技要項に記載の期日までであれば可能です。メールでご連絡ください。
Q16.予選でチームの一人の具合が悪く欠席した場合、どうすればいいですか?
A16.本選出場、入賞の対象外となりますが、個人成績は発行されます。申込みをした担当教員を通じて事務局までご連絡ください。
Q17.解答プログラムの作成にあたって使用できるライブラリの範囲を教えてください。

A17.C、C++、Javaに付随する標準的なライブラリは使用できます。詳細は「競技環境」を確認してください。

Q18.競技中にインターネットで検索して情報を得ることは可能ですか?
A18.不可です。事前に印刷した情報または書籍等の印刷物を参照することは可能です。
Q19.競技前に作成しておいたプログラムの使用は可能ですか?
A19.紙に印刷して参照することは可能ですが、プログラムの電子的な流用(コピー&ペースト等)は認めません。
Q20.競技中、事前にコンピュータに保存しておいたPDFや画像ファイルなどを参照することは可能ですか?
A20.不可です。事前に印刷した情報を参照することは可能です。
Q21.普段使用しているエディタやコンパイラの使用は可能ですか?
A21.可能ですが、「解答を審査する環境」と同様のオプションを設定することを推奨します。(Q22も併せてご確認ください。)
Q22.エディタによるコード補完機能を利用して良いですか?
A22.プログラムの電子的な流用(コピー&ペースト等)と見なされない範囲で利用してください。
Q23.コンピュータの標準機能の電卓は使用可能ですか?
A23.不可です。問題を解くために必要な計算等はプログラムを書いて行ってください。
Q24.競技要項「5 予選について」に、「競技に使用するコンピュータ(原則として生徒1名につき1台)を含む競技環境は
   生徒が在籍する学校等が用意します。」とありますが、自分で所有するコンピュータを使用しても問題はありませんか?
A24.競技に使用するコンピュータは学校が所有するものの他、学校の判断で適切と認めたものを使用することができます。

オンライン講座

オンライン講座とは

  • パソコン甲子園予選・本選で使用する競技システムを使って、プログラミングを学習できるオンライン講座を開講します。
  • 提出された解答プログラムは自動的に採点され、即座に結果を知ることができます。
  • 自分のペースで学習ができ、プログラミング初心者から経験者まで広く活用されています。
  • 参加費用は無料です。

こんな方にオススメします

■パソコン甲子園プログラミング部門に出場する方、また今後出場する予定の方 

パソコン甲子園予選・本選で使用する競技システムを使用しますので、システムの使い方を本講座にて確認してください。

■プログラミング経験者・中級者の方

パソコン甲子園の過去問を中心に演習を行い、さらなるレベルアップを目指すことができます。

■プログラミング初心者の方

プログラミング言語の基礎を学ぶことができます。
また、パソコン甲子園予選問題のうち、難易度の低い問題が解けるレベルを目指して学習することができます。

受講申込

受講を希望される方は、こちらのファイルに必要事項を全て入力の上、パソコン甲子園事務局宛てに送付してください。
送付先 パソコン甲子園事務局
メールアドレス pc-proj<アットマーク>u-aizu.ac.jp
※<アットマーク>は記号に変換してください
件名 オンライン講座申し込み
申込期限 7月31日(水)

実施方法

インターネットにアクセスできるコンピュータから、ブラウザを用いて、
オンライン講座(Active Learning Studio)のURL(申し込みされた方にご案内いたします)にアクセスしてお使いください。
エディタやコンパイラがあれば便利ですが、それらが無くても学習は進められます。

実施期間 2024年9月9日(月)~2024年3月31日(月)(予定)
対象者 小・中・高等学校・高等専門学校等に在籍する生徒及び教員
-->

予選結果

上位入賞(本選出場):10チーム

都道府県 学校名 チーム名 得点
兵庫県 灘高等学校 競技のマジョリティア 162
東京都 麻布高等学校 数え上げ老人会 154
東京都 筑波大学附属駒場高等学校 DoublePlay 152
神奈川県 横浜市立横浜サイエンスフロンティア高等学校 スズメの涙 142
茨城県 茨城県立並木中等教育学校 notti 128
沖縄県 N高等学校 NCoders 110
神奈川県 聖光学院高等学校 頻出問題!高橋君 110
東京都 城北高等学校 GenSouKyo 110
東京都 東京都立小石川中等教育学校 MarbleBlue 104
大阪府 大阪公立大学工業高等専門学校 目標:全国大会金賞 98
※全ての本選出場チームは、こちらからご覧いただけます。

新人賞:7チーム

※新人賞は、早期からの参加奨励のため、1年生同士で構成されたチームの中で、予選成績および地域性を考慮して授与されます。
※新人賞には本選出場資格はありませんが、本選終了後に賞状及び副賞をお送りします。

都道府県 学校名 チーム名
岩手県 盛岡中央高等学校 りもこんてんこもり
福島県 福島県立平工業高等学校 #4169E1
茨城県 茨城県立並木中等教育学校 notti
愛知県 豊田工業高等専門学校 typhonik
兵庫県 灘高等学校 Never Know
広島県 広島大学附属高等学校 直感的な貪欲法
宮崎県 宮崎県立宮崎西高等学校 komeguri

過去問題

パソコン甲子園で使用した問題及びその解説の著作権は、全国高等学校パソコンコンクール実行委員会に帰属します。
私的使用のための複製など著作権法により利用が認められる場合を除き、本サイトから入手できる全ての問題・解説について、上記実行委員会の許諾を得ない使用はできません。
なお、学校における部活動での教材としての使用には、許諾申請は不要です。

全国高等学校パソコンコンクール実行委員会