-
# 시간초과
#include <iostream>
int GenBox(char**& _box, int _num) {
_box = new char* [_num];
for (int i = 0; i < (2 * _num) - 1; i++) {
_box[i] = new char[2 * _num - 1];
}
for (int i = 0; i < _num; i++) {
for (int j = 0; j < 2 * _num - 1; j++) {
_box[i][j] = ' ';
}
}
return 1;
}
int FreeMem(char**& _box, int _num) {
for (int i = 0; i < 2 * _num - 1; i++) {
_box[i] = nullptr;
delete[] _box[i];
}
_box = nullptr;
delete[] _box;
return 1;
}
int PrintStar(char** _box, int _num) {
for (int i = 0; i < _num; i++) {
for (int j = 0; j < 2 * _num - 1; j++) {
std::cout << _box[i][j];
}
std::cout << '\n';
}
return 1;
}
int GenStar(char**& _box, int _num, int _x, int _y) {
if (_num == 1) {
_box[_x][_y] = '*';
return 1;
}
else {
_box[_x][_y] = '*';
GenStar(_box, _num - 1, _x + 1, _y + 1);
GenStar(_box, _num - 1, _x + 1, _y - 1);
return 1;
}
}
int main(void) {
char** box = nullptr;
int num = -1;
std::cin >> num;
GenBox(box, num);
GenStar(box, num, 0, (2 * num - 1) / 2);
PrintStar(box, num);
FreeMem(box, num);
return 0;
}# 성공
#include <iostream>
int PrintStar(int _num) {
for (int i = 1; i < _num + 1; i++) {
for (int j = i; j < _num; j++) {
std::cout << ' ';
}
for (int k = 1; k < 2 * i; k++) {
if (k % 2 == 1) {
std::cout << '*';
}
else {
std::cout << ' ';
}
}
std::cout << '\n';
}
return 1;
}
int main(void) {
int num = -1;
std::cin >> num;
PrintStar(num);
return 0;
}