zuka
ついに競技プログラミングを始めました!
本記事は,管理人の競技プロ精進日記としてログを取ったものです。モチベーションを爆上げするために積極的にアウトプットしていく作戦です。これから競技プログラミングを始めようと考えている人や,なんとなく敷居が高いと感じている人の参考になれば嬉しく思います。その他の記事は以下をご覧ください。
目次
本記事の概要
Atcoderが公表しているc++の入門記事の内容を1からさらっていくものです。今回は1.14.STLの関数です。
実装
#include <bits/stdc++.h>
#define _GLIBCXX_DEBUG
#define rep(i, n) for (int i = 0; i < (int)(n); i++)
using namespace std;
int main() {
int A, B, C;
cin >> A >> B >> C;
// max関数とmin関数を活用した出力
cout << max(max(A, B), C) - min(min(A, B), C) << endl;
}
ポイント
今回おさえるべき内容
#include <bits/stdc++.h>
によって様々な関数が利用できるようになる
max
,min
,swap
,sort
,reverse
などが代表的
関数に渡す値を引数,関数の計算結果を返り値と呼ぶ
便利な機能を簡単に使うための仕組みは関数と呼ばれています。通常は,関数を使いたい場合には自分で定義する必要があるのですが,#include <bits/stdc++.h>
というおまじないを唱えることでいくつかの関数がデフォルトで使えるようになります。このような関数のまとまりを「STL(Standard Template Library)」と呼びます。
関数 | 機能 |
---|---|
max(a,b) | aとbのうち大きい方を返す |
min(a, b) | aとbのうち小さい方を返す |
swap(a, b) | aとbを入れ替える |
sort(A.begin(), A.end()) | vector 型のAを小さい順に並び替える |
reverse(A.begin(), A.end()) | vector 型のAを逆順にする |
STLの関数には,上で挙げた以外にもたくさんの機能が用意されています。さしあたりは,上に挙げた代表的な関数を頭に入れておけば大丈夫でしょう。
コメント