こんにちは、今日はstd:setの意味と使い方を解説します。
目次
setの意味と使い方
setはこのように定義することができます。
set <int> value;
その役割はズバリ、
重複した数字を1つで記録する
です。
お前説明下手すぎだろクソかよ。と思ったでしょうからもう少し詳しく解説します。
使用例
具体例で見ていきましょう。下のものは次の問題を解くプログラムです。
問題:N個の値を入力し、重複しない値の個数を数えよ
#include <iostream>
#include <set>
using namespace std;
int main() {
int N;
int a[100];
cin >> N; //値の数の入力
//値の入力
for (int i = 0; i < N; ++i){
cin >> a[i];
}
for (int i = 0; i < N; i++) {
}
// set のサイズは.size()でわかる
}
まず、
set<int> value;
があり、その後で
for (int i = 0; i < N; i++) {value.insert(a[i]); // 値の挿入}
があります。setで定義したものに値を入力するにはinsertを使います。
ここで、a[i]の中身が
a[i]=1,2,2,3,3,4
だったとすると、value.insert(a[i])をすると、重複した数字を1つで記録するため
value=1,2,3,4
となるわけです。
このように重複したものを1つにします。
いやあ、とても便利ですね。
というわけで今日は以上です。