#include <cstdio>
#include <map> // нужный для map-а include
using namespace std;
map <int, int> m; // на самом деле это set < pair<int,int> > т.е. множество пар
int main()
{
m[123] = 2; // map в использовании похож на массив m[i], разница в том, что тип и диапозон "i" произвольный
m[-123] = 3;
printf("%d\n", m[123]);
printf("%d\n", m[-123]);
printf("size = %d\n", m.size()); // выведет 2
printf("count = %d\n", m.count(30)); // выведет 0
printf("m[30] = %d\n", m[30]); // если в 30-ю ячейку еще ничего не положили, она инициализируется 0-м
printf("count = %d\n", m.count(30)); // выведет 1
printf("size = %d\n", m.size()); // выведет 3
return 0;
}