int timestamp[1024][1024], TS; int calc(int i, int j) { if (timestamp[i][j] == TS) return mem[i][j]; ... timestamp[i][j] = TS; mem[i][j] = maior; } int main() { memset(timestamp, 0, sizeof(timestamp)); TS = 0; ... TS++; // Zera matriz int resp = calc(0, 0); }Adaptado de 2015, Ricardo Oliveira. MEDITEC 6. PD Aplicado a Competições de Programação.