Skip to content

Latest commit

 

History

History
48 lines (33 loc) · 3.13 KB

preparation.md

File metadata and controls

48 lines (33 loc) · 3.13 KB

事前準備

以下のサイトにアカウント登録だけお願いします。チームで参加する人はチームで1つのアカウントを作成してください。登録はすぐにできるので現地でさくっと作ってもらっても大丈夫です。

  • AIZU ONLINE JUDGE (AOJ)
    • 競技プログラミングの問題を集めたサイトで、会津大学が運営しています。
    • JOI,IOI(情報オリンピック)やACMという学会が開催しているICPCというコンテストなどの過去問、競プロ入門用の問題など多くの問題があります。
  • Virtual Arena
    • AOJ上の問題を選んで模擬コンテストを行うことができます。

  • C
  • C++
  • Java
  • C#
  • D
  • Ruby
  • Python
  • PHP
  • JavaScript

この中に使用できる言語がない人はこれ以降も読み続けてください。

残念ながら、今回は上記の言語しか使用することができません。

対処法としてはいくつかあって、

  1. 使える言語のある人とチームを組んで一緒に考える。
  2. 簡単な文法さえ分かれば良いので、新しい言語の勉強をしてみる。(Processingを書いたことのある人はJavaがとっつきやすいと思います)
  3. コンテスト中に気合で文法をぐぐる

といった感じです。1が事前に負担がないのでオススメですが、いずれ他の言語にも触ることになると思うので、この機会に新しい言語にチャレンジするのも良いと思います。


ここからは2番を選んだ人、1年生向けの説明

言語は好みがあるので好きな言語を探してみてください(使える言語を制限しておいて言えたことではないですが)。Java,Pythonあたりが無難だと思います。 環境構築が大変そうならideoneなどのオンラインコンパイラを使用するのも良いと思います。

Processingと違い、多くのプログラミング言語はコマンドライン上で実行をすることができます。とりあえずはコマンドラインはMacだとターミナル、windowsだとコマンドプロンプトを起動するとでてくるアイツだと思ってくれればいいです。

語弊を招くかもしれませんが、「標準入力から値を受け取る」と言ったらプログラムを実行後にコマンドラインに入力した値を取得すること、「標準出力に値を表示する」と言ったらコマンドライン上に値を表示することだと思ってください。

各言語の入出力の行い方はyukicoderのwikiにまとめられているので参考にしてください。

言語ごとの構文規則などはぐぐると良いページがたくさん見つかると思うのでそれらを参考にして勉強してみてください。 関数型言語などの思考を大きく外した言語ではないので、何かしらの言語を書いたことがあればどの言語もすぐに習得できると思います。