# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
145481 | Fasho | Lozinke (COCI17_lozinke) | C++14 | 1085 ms | 31948 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>
#define N 20005
#define ll long long int
#define MP make_pair
#define pb push_back
#define ppb pop_back
#define sp " "
#define endl "\n"
#define fi first
#define se second
#define ii pair<int,int>
#define lli pair<ll,ll>
#define fast cin.tie(0);cout.tie(0);ios_base::sync_with_stdio(false)
#define fast2 freopen ("kmp.in","r",stdin);freopen ("kmp.out","w",stdout);
#define mod 1000000009
#define fs(x,y) for(int i=1;i<=y;i++) cin>>x[i]
#define fo(i,x,y) for(int i=x;i<=y;i++)
#define INF 1000000000005
using namespace std;
ll n,m,ar[N],sum;
string s[N],tmp;
map<string,ll> mp,mark;
int main()
{
fast;
cin>>n;
fo(i,1,n)
{
cin>>s[i];
mp[s[i]]++;
}
for(int i=1;i<=n;i++)
{
for(int j=0;j<s[i].size();j++)
for(int h=0;h<=j;h++)
{
for(int g=0;g<=j-h;g++)
{
tmp.pb(s[i][h+g]);
}
if(mark[tmp])
continue;
mark[tmp]++;
if(h==0 && j==s[i].size()-1)
sum--;
sum+=mp[tmp];
// cout<<tmp<<sp;
tmp.clear();
}
for(int j=0;j<s[i].size();j++)
for(int h=0;h<=j;h++)
{
for(int g=0;g<=j-h;g++)
{
tmp.pb(s[i][h+g]);
}
if(mark[tmp]=0)
continue;
tmp.clear();
}
}
cout<<sum;
}
/* cd onedrive\desktop\kod
cls
*/
Compilation message (stderr)
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |