본문 바로가기
개발/백준 & 프로그래머스

[백준]10992번 별 찍기-17 c/c++

by 성장하고픈개발자 2022. 7. 1.
728x90
728x90

문제

https://www.acmicpc.net/problem/10992

나의 해결방법

  • 첫번째 for문은 출력해줄 줄의 수 - 1
  • 두번째 for문은 파란색 / 기준으로 왼쪽에 있는 공백
  • 분홍색 하이라이트 * 을 출력
  • 세번째 for문은 공백 출력 (0,1,3,5...개)
  • 초록색 하이라이트 * 을 출력
    (첫번째 줄은 출력 안해주므로 i>1일때만)
  • 마지막 줄은 입력해준 n의 2n-1개수의 \ 을 출력

코드

#include<iostream>
using namespace std;

int main()
{
    int n;
    cin >> n;

    for (int i = 1; i < n; i++) { //4를 입력해줬을때 3번째 줄까지만 출력
        for (int j = 1; j <= n - i; j++) {
            cout << " ";
        }
        cout << "*";
        for (int k = 0; k < 2 * (i - 1) - 1; k++) {
            cout << " ";
        }
        if (i > 1) {
            cout << "*";
        }
        cout << endl;
    }
    for (int i = 1; i <= 2 * n - 1; i++) {
        cout << "*";
    }
    return 0;
}

피드백
개인적으로 별찍기중 이 문제가 생각해야하는게 젤 많았다.

728x90
728x90