알고리즘 공부/C++

백준 11656번 접미사 배열 C++

마달랭 2024. 7. 20. 23:56
반응형

리뷰

sort를 통해 문제를 풀었다.

 

문제 풀이

  1. 문자열을 변수 s에 입력받아 주고 빈 문자열 리스트 lst를 초기화 해준다.
  2. 문자열 s의 길이만큼 for문을 개행해 주고, 빈 문자열 temp를 초기화 해준다.
  3. i부터 문자열s의 길이만큼 for문을 하나 더 개행해 주고, 각 인덱스의 문자를 temp에 저장해 준다.
  4. 완성된 temp를 문자열 벡터 lst에 추가해 준다.
  5. for문이 모두 종료된 후에 문자열 벡터 lst를 오름차순으로 정렬해 준다.
  6. 벡터 lst의 각 요소를 출력해 준다.

 

참고 사항

없음

 

정답 코드

#include <iostream>
#include <vector>
#include <algorithm>

using namespace std;

int main() {
	string s;
	cin >> s;
	vector<string> lst;
	for (int i = 0; i < s.size(); i++) {
		string temp = "";
		for (int j = i; j < s.size(); j++) {
			temp += s[j];
		}
		lst.push_back(temp);
	}
	sort(lst.begin(), lst.end());
	for (int i = 0; i < lst.size(); i++) {
		cout << lst[i] << "\n";
	}
}

 

 

728x90
반응형

'알고리즘 공부 > C++' 카테고리의 다른 글

백준 2857번 FBI C++  (1) 2024.07.21
백준 10820번 문자열 분석 C++  (1) 2024.07.21
백준 2948번 2009년 C++  (1) 2024.07.20
백준 11655번 ROT13 C++  (0) 2024.07.20
백준 11170번 0의 개수 C++  (1) 2024.07.20