[백준] 2444번. 별 찍기 - 7

연성·2020년 10월 14일
0

코딩테스트

목록 보기
69/261
post-custom-banner

[백준] 2444번. 별 찍기 - 7

별 찍기는 마음을 편하게 해준다. (단, 쉬운 것만)

1. 문제

예제를 보고 규칙을 유추한 뒤에 별을 찍어 보세요.

2. 입력

첫째 줄에 N(1 ≤ N ≤ 100)이 주어진다.

3. 출력

첫째 줄부터 2×N-1번째 줄까지 차례대로 별을 출력한다.

4. 예제 입력

5

5. 예제 출력

    *
   ***
  *****
 *******
*********
 *******
  *****
   ***
    *

6. 풀이

  • 윗 부분은 별찍기 - 5과 같다.
  • 중간 밑으로만 구현하면 된다.
  • 앞 공백은 i개, 별 개수는 최대 개수(2N-1)에서 2개씩 줄어드니까 2N-1-2i개이다. 더 간단하게 쓸 수 있는지는 모르겠는데 아무튼 그냥 했다.

7. 코드

#include <iostream>
using namespace std;


int main() {
	cin.tie(NULL);
	ios_base::sync_with_stdio(false);
	
	int n;
	cin >> n;

	for (int i = 1; i <= n; 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 = 1; i < n; i++){
		for (int j = 0; j < i; j++) cout << " ";
		for (int j = 0; j < (2 * n - 1) - 2 * i; j++) cout << "*";
		cout << "\n";
	}

}

post-custom-banner

0개의 댓글