はじめに
今まで、AtCoderの問題はrubyで解いていたのですが、競技プログラミングといえば、やっぱりC++だろうと言うことでC++で始めました。
ここでは、最初にC++の何を勉強したかを簡単にまとめていきたいと思います。
基本的には、https://atcoder.jp/contests/apg4bを参考にしていきます。
ただ、環境構築がとてもめんどくさいので、https://atcoder.jp/contests/apg4b/custom_testのコードテストで実行していこうかなと思っています。
基本形
#include <bits/stdc++.h>
using namespace std;
int main() {
}
基本形はこのようになります。基本的に、int main(){}の中にコードを書いていきます。簡単にコードの説明をします。
#include <bits/stdc++.h >
標準ライブラリをインクルードします。
using namespace std;
名前空間内の変数や関数にアクセスするには名前空間名::
によって名前空間を指定します。using namespace std;
はstd::
を省略するためものです。つまり、変数を呼び出す時に、いちいち名前空間名::を付けなくてはいけませんが、using namespace std;と付けておけば、名前空間名::を省略して書くことができ、コードが短くなり便利です。
int main() {}
C++のプログラムはmain関数の{の次から実行されます。
基本的にこのカッコ内に処理を書いていけば良いです。
出力
#include <bits/stdc++.h>
using namespace std;
int main() {
cout << "Hello World!" << endl;
cout << "YES" << endl;
cout << ans << endl;
cout << (a+b+c) << " " << s << endl;
}
出力にはcout(シーアウト)を使います。endlは改行を意味します。<<を用いれば、つなげて出力することができます。
変数
#include <bits/stdc++.h>
using namespace std;
int main() {
int name;
name = 10;
}
変数を使うには、最初に宣言を行う必要があります。
変数を宣言するときは、「データの種類」と「変数の名前」を指定します。
型の種類はintが整数、doubleが小数、stringが文字列となります。
#include <bits/stdc++.h>
using namespace std;
int main() {
int name = 10;
}
宣言と代入を同時に行うこともできます。
入力
int main() {
int a;
cin >> a;
}
int main() {
int a,b,c,n;
cin >> a >> b >> c >> n;
}
cin(シーイン)を使います。入力する際にも、先に宣言をする必要があります。
>>を用いることで複数の値を受け取ることができます。
入出力
#include <bits/stdc++.h>
using namespace std;
int main() {
int a,b,c;
cin >> a >> b >> c;
int ans = a + b + c;
cout << ans << endl;
}