Куча была повреждена 0x00007FFFEC3027F0

Я ослеп что-ли? Где тут ошибка? (n <= 250).

u16** d = new u16*[n];
i8** pl = new i8*[n];
for (i8 i(0); i < n; ++i) {
    pl[i] = new i8[i];
    d[i] = new u16[i];
    for (i8 j(0); j < n; ++j) {
        d[i][j] = -1;
        cin >> pl[i][j];
    }
}

Ответы (1 шт):

Автор решения: Harry

Вас не смущает, что в строках

for (i8 i(0); i < n; ++i) {
    pl[i] = new i8[i];
    d[i] = new u16[i];

Вы выделяете массивы размером 0 (уже проблема!), потом 1, потом... элементов, а потом загоняете в них

    for (i8 j(0); j < n; ++j) {
        d[i][j] = -1;

n элементов в каждый? Выходя за границы выделенной памяти?

→ Ссылка