# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
491622 | blue | Lozinke (COCI17_lozinke) | C++17 | 485 ms | 16532 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 <iostream>
#include <string>
#include <map>
#include <vector>
#include <set>
using namespace std;
map<string, int> ct;
void map_insert(string s)
{
if(ct.find(s) == ct.end()) ct[s] = 1;
else ct[s]++;
}
int main()
{
ios_base::sync_with_stdio(false);
cin.tie(NULL);
int N;
cin >> N;
vector<string> s(N);
for(int i = 0; i < N; i++)
{
cin >> s[i];
int k = int(s[i].size());
set<string> z;
for(int j = 0; j < k; j++)
for(int l = j; l < k; l++)
z.insert(s[i].substr(j, l-j+1));
for(string t: z)
map_insert(t);
}
int ans = 0;
for(int i = 0; i < N; i++)
{
// cerr << i << " : " << ct[s[i]] << '\n';
ans += ct[s[i]] - 1;
}
cout << ans << '\n';
}
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |