[백준] 2446. 별 찍기 - 9



문제







풀이


세가지를 유의해서 풀자.

1. 윗부분은 뒤집힌 모양, 아랫부분은 제대로 된 모양.
2. 공백이 존재하다.
3. 1은 하나만 존재하면 되니까 윗부분에서 1 ~ N 까지 출력하고 아랫부분에선 2 ~ N 까지 출력하자.

#include <stdio.h>
#include <iostream>
#include <algorithm>
#include <math.h>
#include <vector>
#include <queue>
#include <set>
#include <stack>
#include <map>
#include <string>

using namespace std;

int main(){
    
    ios::sync_with_stdio(false);
	cin.tie(NULL);
    cout.tie(NULL);

    int n; cin >> n;
    for(int i = n; i >= 1; i--){
        for(int j = 0; j < n - i; j++){
            cout << " ";
        }
        for(int j = 0; j < 2 * i - 1; j++){
            cout << "*";
        }
        cout << '\n';
    }
    for(int i = 2; i <= n; i++){
        for(int j = 0; j < n - i; j++){
            cout << " ";
        }
        for(int j = 0; j < 2 * i - 1; j++){
            cout << "*";
        }
        cout << '\n';
    }
    return 0;
}
    
    

댓글