プログラミング初心者こそ競技プログラミングがおすすめ!

はじめに

プログラミングを始めたばかりの頃はコンソールに文字を出力したりするだけでも楽しいですが、だんだん飽きてきますよね。「モチベーション維持にプログラミングで何かしたいけどアプリ開発はハードルが高い…。」と思う人も多いはず。

これはそんな方に競技プログラミングをおすすめする記事です。

競技プログラミングって何?

この記事を見ているということはすでに興味があるのかもしれませんが、改めて説明すると

与えられた条件を満たす答えを出力するプログラムを書く競技

です。(そのままじゃんって言わないで)

例を挙げましょう

問題

整数a, b, cが与えられる。これらの和と積を出力しなさい。

入力

入力は以下の形式の標準入力で与えられる

a b c

出力

和がA, 積がBである時は以下のように出力せよ

A B

解答例

#include<iostream>
using namespace std;

int main(){
    int a,b,c;
    cin >> a >> b >> c;
    cout << a + b + c << " " << a * b * c << endl;
    return 0;
}

これくらいだとつまらないと思うかもしれませんが、実際にはこれよりも複雑な問題を解かなければいけません。感覚として数学の問題やパズルのようなものです。

どうやって始めるの?

オンラインのプログラミングコンテストを行っているAtCoderが人気です。

(AtCoder自体の利用の仕方はホームページや他サイトを参考にしてください)

AtCoder
https://atcoder.jp

また、AtCoderではプログラミングの入門講座(APG4b)のようなものがあり、プログラミング未経験の人でも競技プログラミングを始めることができます。(C++という言語を使います。自分も未経験でしたが競技プログラミングをやる上で必要な知識を得られます。)

最後に

競技、なんていうからには難しそうだと思うかもしれませんが初心者でも解ける問題がたくさんあるのでそこから始めて気楽に楽しんで欲しいと思います。

これからは解いた問題の備忘録などを掲載する予定です。どう考えたかを中心に書くことになる(予定)なので自分で問題を解いていて気になる部分があったらこのサイトを覗いてくれると嬉しいです。

コメント