[백준] 2445번. 별 찍기 - 8

연성·2020년 10월 14일
0

코딩테스트

목록 보기
70/261

[백준] 2445번. 별 찍기 - 8

1. 문제

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

2. 입력

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

3. 출력

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

4. 예제 입력

5

5. 예제 출력

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

6. 풀이

  • 중간까지 별의 개수 i개, 공백 수 2(n-i)
  • 중간 이후 별의 개수 n-i개, 공백 수 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 < i; j++) cout << "*";
		for (int j = 0; j < 2 * (n - i); j++) cout << " ";
		for (int j = 0; j < i; j++) cout << "*";
		cout << "\n";
	}
	
	for (int i = 1; i < n; i++){
		for (int j = 0; j < n - i; j++) cout << "*";
		for (int j = 0; j < 2*i; j++) cout << " ";
		for (int j = 0; j < n - i; j++) cout << "*";
		cout << "\n";
	}
	

}

0개의 댓글