typedef pair<int, int> ii;
map<ii, int> PD;
map<ii, int>::iterator PDi;
...
int funcao(int a, int b) {
...
PDi = PD.find(ii(a, b));
if (PDi != PD.end())
return PDi->second;
...
return PD[ii(a, b)] = resp;
}
Adaptado de 2015, Ricardo Oliveira. MEDITEC 6. PD Aplicado a Competições de Programação.