[백준] 11656번 접미사 배열 / C++

#문제

백준 11656번 접미사 배열

#풀이

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

using namespace std;

vector<string> vec;

int main()
{
	ios::sync_with_stdio(false);
	cin.tie(nullptr);

	string s;
	cin >> s;

	for (int i = 0; i < s.size(); ++i)
	{
		string suffix;

		for (int j = i; j < s.size(); ++j)
		{
			suffix += s[j];
		}

		vec.push_back(suffix);
	}

	sort(vec.begin(), vec.end());

	for (const string& iter : vec)
	{
		cout << iter << '\n';
	}

	return 0;
}

#정리

접미사 배열을 입력받고 사전순으로 출력하는 프로그램을 만드는 문제. 입력받은 접미사를 분해하여 vector 컨테이너에 담고 정렬하여 출력.




    Enjoy Reading This Article?

    Here are some more articles you might like to read next:

  • [백준] 1764번 듣보잡 / C++
  • [백준] 11650번 좌표 정렬하기 / C++
  • [백준] 2751번 수 정렬하기 2 / C++
  • [백준] 1269번 대칭 차집합 / C++
  • [백준] 10825번 국영수 / C++