728x90
풀이
별을 아래의 그림처럼 노란색, 연두색, 하늘색으로 나누어 찍었다.
if (abs(j) >= N-1 && abs(i) == N-1) putchar('*'); // 노란색
else putchar((abs(j)-abs(i) == N-1) || (abs(i)==abs(j)) ? '*' : 32); // 연두색 || 하늘색
마지막 별을 찍고 개행을 해야 한다는 점을 유의하자.
소스코드
#include <stdio.h>
#include <math.h>
int main(){
int N;
scanf("%d", &N);
for (int i = -N+1; i < N; i++){
for (int j = -2*N+2; j < N + abs(i); j++)
if (abs(j) >= N-1 && abs(i) == N-1) putchar('*');
else putchar((abs(j)-abs(i) == N-1) || (abs(i)==abs(j)) ? '*' : 32);
putchar(10);
}
}
출처
728x90
'PS > Baekjoon Online Judge' 카테고리의 다른 글
[백준 18870] 좌표 정렬 [C/C++] (0) | 2021.08.08 |
---|---|
[백준 11399] ATM [C] (0) | 2021.08.07 |
[백준 10997] 별 찍기 - 22 [C] (0) | 2021.08.07 |
[백준 10996] 별 찍기 - 21 [C] (0) | 2021.08.07 |
[백준 10994] 별 찍기 - 19 [C] (0) | 2021.08.07 |