• Home
  • About
    • 코드좀비 photo

      코드좀비

      An amazing website.

    • Learn More
    • Github
  • Posts
    • All Posts
    • All Tags
  • Projects

[BOJ] 백준 11478 서로 다른 부분 문자열의 개수 간단한설명과 코드 C++

28 Mar 2020

Reading time ~1 minute

문제 정보

백준 ( BOJ ) 11478 서로 다른 부분 문자열의 개수

문제 풀이 : unordered_set

문제 출처 : https://www.acmicpc.net/problem/11478

시작 Thinking

간단하게 해쉬로, 중복 체크만 해주면서 넘어가면 됩니다!.

부분문자열을 가장 간단하게 만든느 방법은

for(int i =0;  i < n; i++){
  sum = "";
  for(int j =i ; j < n; j++){
    sum += string[j];
    insert sum;
  }
}

위와 같습니다~.

코드

#include<iostream>
#include <unordered_set>
#include <string>

using namespace std;

string s;
int sizes;
unordered_set<string> us;

void fun() {
	string sum = "";
	for (int i = 0; i < sizes; i++) {
		sum = "";
		for (int j = i; j < sizes; j++) {
			sum += s[j];
			us.insert(sum);
		}
	}
}

int main() {

	cin >> s;
	sizes = s.length();

	fun();
	cout << us.size();


	return 0;
}


백준C++unordered_set Share Tweet +1