[백준/BOJ] 백준 10992번 : 별 찍기 - 17

2020. 9. 15. 02:38알고리즘 문제풀이

www.acmicpc.net/problem/10992

 

10992번: 별 찍기 - 17

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

www.acmicpc.net

공백과 별이 찍히는 위치를 고려해서 출력한다.

 

코드

#include <iostream>
using namespace std;

int n;

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

	cin >> n;

	for (int i = 0; i < n; i++)
	{
		if (i == 0) //첫번째 줄일때
		{
			for (int j = 0; j < n-1; j++)
				cout << " ";
			cout << "*";
		}

		else if (i == n-1) //마지막 줄일때
		{
			for (int j = 0; j < 2 * n - 1; j++)
				cout << "*";
		}

		else //첫번째줄과 마지막줄이 아닌, 중간에 속한 줄일때
		{
			for (int j = 0; j < n - (i+1); j++)
				cout << " ";
			cout << "*";

			for (int j = 0; j < 2*i-1; j++)
				cout << " ";
			cout << "*";
		}

		cout << "\n";
	}
	return 0;
}