본문 바로가기

프로그래밍_백준/C++

(c++) 백준 2675 문자열 반복

728x90
반응형

 

문자열 반복 문제입니다!

제가 해결한 방법은 string을 통해서 해결했습니다.

먼저 cin은 기본적으로 \n이 있기에 getline() 함수가 제대로 작동하려면 cin.ignore()을 필수적으로 사용합니다.

또 str[0]은 char형의 "3"인데 이것을 '0'으로 빼주어서 int형 3으로 바꿉니다.

 

#include<iostream>
#include<string>
using namespace std;

int main()
{
	int n;//반복할 횟수
	string str;
	cin >> n;
	cin.ignore();//cin에는 기본적으로 \n이 있기 때문에 이를 제거해야 함.

	for (int a = 0; a < n; a++) {
		getline(cin, str);//반복할 횟수 (공백) 문자열
		for (int i = 2; i < str.length(); i++) {
			for (int j = 0; j < (str[0] - '0'); j++) {
				cout << str[i];
			}
		}
		cout << "\n";
	}
}
728x90
반응형