#はじめに
最近、AtCoderのABC参加者数がコンスタントに1万人を超えていて確か1年前は3000~4000人ぐらいだった気がするのにすごいなあと思っているところです。
そこでGoogleColab(Python)を使ってサクッとAtCoderを試してみるまでのチュートリアルを書きました。
ちなみにPythonや他の言語が書ける前提で話を進めます。全くプログラミング分からん!って人は理解出来なかったとしても気にせずに進んでいいと思います。とりあえず動かしてみましょう。
GoogleColabがスマホからでも使えるのでスマホからでもAtCoder出来ます。PCなくてもスマホやタブレットでプログラミング出来るなんて凄い時代ですよね。
ガッツリやりたい人はお手元のPCに開発環境を入れるべきだと思います。
#やること
- AtCoderのアカウント登録する ←ココから
- GoogleColabを使ってみる ← ココまで
- AtCoderの問題を解こう ←Part2
- AtCoder Problemsを使ってみる ←Part2
#AtCoderのアカウント作成
とりあえず公式のリンク置いときますね。→AtCoder公式
まず新規登録のページに移動します。
ここにユーザ名とかメールアドレスとかを入力していって登録しましょう。
ちなみにユーザ名は1度しか変更出来ないので注意してください。就活で使うつもりの人は変な名前にするのは止めといたほうが良いかもしれません。
また、複アカは規約で禁止されてるので止めしょう。複数人で単一アカを共有するのも禁止です。
新規登録できましたか?
多分勝手にログイン状態になってるはずです。
アイコンとかを設定したい人は右上のアカウント名の所をクリックして出てくるメニューの基本設定から変更出来ます。
スマホの場合は画面上部のど真ん中に先程入力したアカウント名があると思います。
#GoogleColabを使ってみる
次に一旦AtCoderから離れてGoogleColabを使ってみようと思います。
開発環境がある人は飛ばしてください。
###GoogleColab?
Googleが用意するすげーやつです。
多分正式名称が Google Colaboratory で通称がColabです。GoogleColabとも言われます。違ってたらごめんなさい。(あまり自信が無い)
Jupyter Notebookみたいな感じの機能をネット上で使えるやつです。制限は多少ありますがGPUが使える(しかも無料)ので機械学習とかでもつかえてそっちの教育方面で人気っぽさそうなウワサを聞きました。ノートPCで機械学習なんて正気の沙汰じゃないですもんね。
簡単に説明すると、準備がいらず、Pythonが使えて、簡単に共有出来るヤツです。
##Googleアカウント作成
アカウントはGoogleのアカウントです。多分ある人が多いと思いますが作ってない人は作りましょう。説明は端折ります。
##とりあえず使ってみる
GoogleでGoogle Colabとかでググったら最上位に出てくるのでそこにアクセスしましょう。(他にも方法はありそうですが知りません)
Google Colab
チュートリアル的なのが表示されてると思うので左上の[ファイル]->[ノートブックを新規作成]を選びます。
するとまっさらなページが表示されますね。
画面左上のUntitled1.ipynbをクリックするとファイル名を変更出来ます。拡張子的なのがついてますが多分消しても大丈夫です。
今回はとりあえずHello_Colab.ipynbに変えましょう
次にコードを書いて動かしてみます。
print("hello colab !!!")
Colabの再生マークみたいなとこの右側をクリックしたら編集が出来るようになるので上記のPython3のコードを貼り付けてください。
貼り付けたら実行しましょう。
この画像のようになれば成功です。ありがとうございました。
標準入力がわかる人は次の記事に移動しましょう。
##標準入力の受け取り
プログラミングが出来る人は多分最初の頃にやったことあると思いますが意外と忘れてる人が多いらしいので念の為説明しときます。
標準入力は簡単にいうとキーボードからの入力です。詳しく知りたい人はググってください。
JavaだとScanner
クラスのインスタンス作ってnextLine()
とかするやつですね。
Pythonだととても簡単にできます。
ちなみにColabでは上部の「+コード」を押せばコードの入力欄が、「+テキスト」を押せばテキストの入力欄が増えます。
毎回hello colab !!!
と表示されるのも面倒なので「+コード」を押して入力欄を増やしときましょう。
input('入力してください:')
上記のコードを先程と同じ用にコピペして実行してみましょう。ちなみに、再生マークを押さなくても Windows の場合 Ctrl + Enter で実行出来ます。MacやLinuxの場合は分かりませんが恐らく同じか似たようなコマンドです。
この画像のようになれば成功です。おめでとうございます。
実行結果を表示する場所にテキストボックス(入力欄)が表示されているのでそこに何か文字を入力して Enter を押してみてください。入力した内容が再度表示されます。
ちなみに、input()
の中に書いた文字が表示されるだけで、何も書かなくても問題ありません。input()
とだけ書いて実行すると何も言われず入力欄が表示されたと思います。AtCoderでは基本的にinput()
を使うと思います。(別の方法もありますが最初は必要ないので説明しません)
現状では入力して表示しただけなので変数に受け取りをして表示をしてみようと思います。
text = input()
print(text+text)
今回は入力した文字2回表示するプログラムを用意しました。
入力した内容を+演算子で2つくっつけて表示してます。
こんな感じになると思います。ちゃんと動いてますね。
次は数字を入力してみてください。その場合でも同じ数字が2回表示されると思います。
これは標準入力で受け取るものが文字型だからです。数値型に変換してやれば動きます。
n = int(input())
print(n * 7)
次はこのコードを入力してみましょう。int()
関数で数値型に変換してます。その後7倍して出力してます。
当たり前ですが数値に変換するので数字じゃない文字を入力するとエラーで怒られます。注意してください。
正しく実行できていればこんな感じですね。受け取る際は文字型で入力されるのでそのままだと数値の計算に使うことができないということを覚えておいてください。