C/C++

Помогите!!! С++ Vector!!!

Необходимо переписать данный код на векторный тип!!!

#include <iostream>
#include <iomanip>
#include <stdlib.h>
#include <ctime>
#include <locale.h>

using namespace std;

//Создание массивов
int* randomArray(int* x, int k, int n) {
for (int i = 0; i < k; i++) {
x[i] = rand() % n;
}
return(x);
}

//Создание двухмерного массива
void newMatrix(int**& pole, int n) {
pole = new int* [n];
for (int i = 0; i < n; i++) {
pole[i] = new int[n];
}
}

//Заполнение двухмерного массива нулями
void MatrixZero(int**& pole, int n) {
for (int i = 0; i < n; i++) {
for (int j = 0; j < n; j++) {
pole[i][j] = 0;
}
}
}

//Отмечает клетки в которые может попасть ферзь
void Way(int** pole, int n, int a, int ka, int b, int kb) {
while (a < n && b < n && !(a < 0 || b < 0)) {
pole[a][b]++;
a += ka;
b += kb;
}
}

//Отмечает ферзя и в какие клетки может попасть Ферзь
void FerzWays(int** pole, int* x, int* y, int k, int n) {

for (int i = 0; i < k; i++) {
int a = x[i], b = y[i];

pole[a][b] += 100;

Way(pole, n, a, 0, 0, 1);
Way(pole, n, 0, 1, b, 0);
Way(pole, n, a - 1, -1, b - 1, -1);
Way(pole, n, a - 1, -1, b + 1, 1);
Way(pole, n, a + 1, 1, b - 1, -1);
Way(pole, n, a + 1, 1, b + 1, 1);
}
}

//вывод поля на экран
void PrintPole(int** pole, int n) {
for (int i = 0; i < n; i++) {
for (int j = 0; j < n; j++) {
if (pole[i][j] == 0) {
cout << setw(4) << 0;
}
else if (pole[i][j] < 100) {
cout << setw(4) << "x";
}
else {
cout << setw(4) << "f";
}
}
cout << endl;
}
}

//вывод координаты клеток, где не проходят ферзи
void PrintPoints(int** pole, int n) {
for (int i = 0; i < n; i++) {
for (int j = 0; j < n; j++) {
if (pole[i][j] == 0) {
cout << "(" << i << ", " << j << ")" << endl;
}
}
}
}

int main() {
setlocale(LC_ALL, "Russian");
srand(time(NULL));
int n, k;
cout << "Введите n:" << endl;
cin >> n;
cout << "Введите k:" << endl;
cin >> k;

int* x = new int[k];
x = randomArray(x, k, n);

int* y = new int[k];
y = randomArray(y, k, n);

int** pole = NULL;
newMatrix(pole, n);
MatrixZero(pole, n);
FerzWays(pole, x, y, k, n);
cout << "Шахматное поле: " << endl;
PrintPole(pole, n);
cout << "Координаты клеток:" << endl;
PrintPoints(pole, n);
}
 #include  
#include
#include
#include
#include
#include

using namespace std;

// Создание массивов
vector randomArray(int k, int n) {
vector x(k);
for (int i = 0; i < k; i++) {
x[i] = rand() % n;
}
return x;
}

// Создание двухмерного массива
vector newMatrix(int n) {
vector pole(n, vector(n, 0));
return pole;
}

// Отмечает клетки, в которые может попасть ферзь
void Way(vector& pole, int n, int a, int ka, int b, int kb) {
while (a < n && b < n && !(a < 0 || b < 0)) {
pole[a][b]++;
a += ka;
b += kb;
}
}

// Отмечает ферзя и в какие клетки может попасть ферзь
void FerzWays(vector& pole, const vector& x, const vector& y, int k, int n) {
for (int i = 0; i < k; i++) {
int a = x[i], b = y[i];

pole[a][b] += 100;

Way(pole, n, a, 0, 0, 1);
Way(pole, n, 0, 1, b, 0);
Way(pole, n, a - 1, -1, b - 1, -1);
Way(pole, n, a - 1, -1, b + 1, 1);
Way(pole, n, a + 1, 1, b - 1, -1);
Way(pole, n, a + 1, 1, b + 1, 1);
}
}

// Вывод поля на экран
void PrintPole(const vector& pole, int n) {
for (int i = 0; i < n; i++) {
for (int j = 0; j < n; j++) {
if (pole[i][j] == 0) {
cout
Марат Мишунин
Марат Мишунин
67 550
Лучший ответ
Игорь Усиков спасибо, святой человек!!!!
это умеет делать за просто так наш любимый чат
очень просто, но лениво...
Семён Штрахов
Семён Штрахов
73 465