# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
94560 | thebes | Lozinke (COCI17_lozinke) | C++14 | 243 ms | 16184 KiB |
This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include <bits/stdc++.h>
using namespace std;
const int MN = 2e4+5;
string s[MN];
unordered_map<string,int> mp, w;
unordered_set<string> st;
int n, i, ans, j, k;
int main(){
for(scanf("%d",&n),i=1;i<=n;i++)
cin >> s[i];
sort(s+1,s+n+1,[](string i,string j){return i.size()>j.size();});
for(i=1;i<=n;i++){
ans += mp[s[i]]+w[s[i]];
st.clear();
w[s[i]]++;
for(j=0;j<s[i].size();j++){
string sub = "";
for(k=j;k<s[i].size();k++){
sub += s[i][k];
if(!st.count(sub)){
st.insert(sub);
mp[sub]++;
}
}
}
}
printf("%d\n",ans);
return 0;
}
Compilation message (stderr)
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |