Implementazione di Grafi in c++

Cosa sono i pair?:sweat_smile:
la struct sarebbe del genere:

typedef struct arco{
    int nodo;
    int distanza;
}arc;
arc x;
cin>>x.nodo;
cin>>x.distanza;
adj[a].push_back(x);