Помогите,пожалуйста.
Делал по аналогии из этого видео
https://youtu.be/_2xQvAgOSD0?t=1302
https://pastebin.com/6ByCz68q - вот если кому так удобнее



Пользуйся отладчиком. Выполняй по шагам, смотри значения переменных.
Ты устанавливаешь размер массива
codes.resize(5);
а потом добавляешь ещё элементы при помощи
codes.push_back(temp);
В результате в массиве 10 элементов, а не 5 как ты ожидал. Первые 5 элементов пустые.
#include <iostream>
#include <iomanip>
#include <random>
#include <vector>
using namespace std;
class Random {
public:
Random() {
random_device device;
gen.seed(device());
}
int uniform(int first, int last) {
uniform_int_distribution<int> uid(first, last);
return uid(gen);
}
int poisson(double lambda) {
poisson_distribution<int> pd(lambda);
return pd(gen);
}
private:
mt19937 gen;
};
class MatrixInt {
public:
MatrixInt(const size_t n, const size_t m) : n(n), m(m) {
matrix.resize(n);
for (auto i = 0U; i < n; ++i) matrix[i].resize(m);
}
void random_fill(int a, int b) {
if (a > b) swap(a, b);
Random rand;
for (auto& row : matrix) for (auto& x : row) x = rand.uniform(a, b);
}
void show(const streamsize& width)const {
for (const auto& row : matrix) {
for (auto x : row) cout << setw(width) << x;
puts("");
}
}
private:
size_t n;
size_t m;
vector<vector<int>> matrix;
};
int main() {
MatrixInt mi{ 5, 8 };
mi.random_fill(10, 99);
mi.show(4U);
system("pause > nul");
}
Тогда перепиши создание и использование двумерного массива с помощью си-шной функции malloc и указателя на указатель int **.
Так все студенты пишут, например, в заданиях на матрицы.
Давай остальные части программы в виде готовых текстовых файлов или предлагаешь физкультурой заняться ненужной по набору текста?
Насчёт задания не смогу помочь. Но чего нельзя написать using namespace std?
class DP_CODE(unsigned int n, unsigned int t) {
не должно быть слова "class". Для меня удивительно, что такой код скомпилировался.