Como inserir eficientemente um intervalo de inteiros consecutivos em um std :: set?

Em C ++, eu tenho um std :: set que gostaria de inserir um intervalo de inteiros consecutivos. Como posso fazer isso de forma eficiente, esperançosamente em O (n) tempo em que n é o comprimento do intervalo?

Eu estou pensando em usar a versão inputIterator do std :: insert, mas não estou claro sobre como construir o iterador de entrada.

std::set<int> mySet;

// Insert [34 - 75):
mySet.insert(inputIteratorTo34, inputIteratorTo75);

Como posso criar o iterador de entrada e isso será O (n) no tamanho do intervalo?