string 라이브러리에 있는
s.substr(i,j)
=> i번째 인덱스부터 i+j-1인덱스까지 문자열
#include <bits/stdc++.h>
#include<unordered_set>
#include<unordered_map>
using namespace std;
string s;
int main() {
ios::sync_with_stdio(0); cin.tie(0);
cin >> s;
unordered_map<string, int> um;
for (int i = 0; i < s.size(); i++) {
string s1;
for (int j = 1; j<=s.size()-i ;j++) {
s1 = s.substr(i, j);
um[s1] = 1;
}
}
int cnt = 0;
for (auto c : um) cnt += c.second;
cout << cnt << '\n';
}