вроде все просто, не знаю, что объяснять. скорее всего, есть возможность сделать это гораздо более оптимизировано, но мне было лень думать, так что сделал тупым и неоптимизированным методом, состоящем из кучи циклов while.
P. s. Если , дайте лучший ответ и жмякните на " " . Это мотивирует давать ответы дальше.
#include <iostream>
using namespace std;
int main()
{
int y, x;
cin >> x >> y;
int a[8][8];
for (int i = 0; i < 8; ++i)
for (int j = 0; j < 8; ++j)
a[i][j] = 0;
y--;
x--;
int px = x, py = y;
while (px >= 0 && py >= 0){
a[px][py] = 2;
px--;
py--;
}
px = x, py = y;
while (px >= 0 && py < 8){
a[px][py] = 2;
px--;
py++;
}
px = x, py = y;
while (px < 8 && py < 8){
a[px][py] = 2;
px++;
py++;
}
px = x, py = y;
while (px < 8 && py >= 0){
a[px][py] = 2;
px++;
py--;
}
px = 0;
while (px < 8){
a[px][y] = 2;
px++;
}
py = 0;
while (py < 8){
a[x][py] = 2;
py++;
}
a[x][y] = 1;
for (int i = 0; i < 8; ++i){
for (int j = 0; j < 8; ++j){
if(a[i][j] == 0) cout << "." << " ";
else if(a[i][j] == 1) cout << "Q" << " ";
else cout << "*" << " ";
}
cout << endl;
}
return 0;
}
Объяснение:
вроде все просто, не знаю, что объяснять. скорее всего, есть возможность сделать это гораздо более оптимизировано, но мне было лень думать, так что сделал тупым и неоптимизированным методом, состоящем из кучи циклов while.
P. s. Если , дайте лучший ответ и жмякните на " " . Это мотивирует давать ответы дальше.
#include <iostream>
#include <vector>
using namespace std;
int main()
{
int t, n, min;
cin >> t >> n;
int a[n];
for (int i = 0; i < n; ++i){
int mark;
cin >> mark;
a[i] = mark;
}
for (int i = -t; i <= t; ++i){
cout << i << ": ";
for (int j = 0; j < n; ++j)
if(a[j] == i)cout << j + 1 << " ";
cout << endl;
}
return 0;
}
Объяснение:
не знаю, что тут объяснять, вроде все просто.
P.s. Если , дайте , лучший ответ и жмякните на " ". Это мотивирует продолжать давать ответы.