InputOutput(2)_print out star8_2445

1 minute read

백준 입출력(2)의 2445번 문제 별찍기8를 풀이해보도록 하겠습니다.

문제 URL : https://www.acmicpc.net/problem/2445

이번 문제 저는 이렇게 접근했습니다.

전체 행의 개수로 보아 가장 바깥 for문을 2n번 반복되게 하는 방법도 가능할 것 같았지만 저는 n번 반복되는 for문을 두번 실행하도록 했습니다. 그렇게 하는 방법이 로직 자체도 더 직관적이고 생각하기에도 간결할 것 같아서요!

Source Code :

#include<iostream>
/*#include<vector>
#include<algorithm>
#include<queue>
#include<string>
#include<set>
#include<map>
#include<cstring>
#include<functional>
#include<cmath>
#include<stack>*/

// #define SIZE 1010

using namespace std;

// typedef long long int ll;


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

	/* 변수 선언 ,*/
	int n;

	/* 입력 */
	cin >> n;
	
	/* 처리 & 출력 */
	for (int i = 1; i <= n; i++) {
		for (int j = 1; j <= i; j++) {
			cout << "*";
		}
		for (int j = 1; j <= 2 * (n - i); j++) {
			cout << " ";
		}
		for (int j = 1; j <= i; j++) {
			cout << "*";
		}
		cout << "\n";
	}
	// cout << "\n";
	for (int i = 1; i <= n; i++) {
		for (int j = i; j < n; j++) {
			cout << "*";
		}
		for (int j = 1; j <= 2 * i; j++) {
			cout << " ";
		}
		for (int j = i; j < n; j++) {
			cout << "*";
		}
		cout << "\n";
	}
	//cin >> n;
	return 0;
}





개인이 공부하고 포스팅하는 블로그입니다. 작성한 글 중 오류나 틀린 부분이 있을 경우 과감한 지적 환영합니다!

Categories:

Updated: