# | TimeUTC-0 | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
367995 | SeekingOblivion | Round words (IZhO13_rowords) | C++14 | 0 ms | 0 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 fin cin
//#define fout cout
using namespace std;
ifstream fin("date.in");
ofstream fout("date.out");
int n,st,f[26],i,St[4010],Dr[4010],m;
char c[4010],s[4010];
vector<int> aint;
struct Nod{
char val;
int f[26];
} blanc;
vector<Nod> v;
vector<int> l[4001],car[27];
void add(int p,int en,int nod)
{
int next;
if(v[nod].f[c[p]-'a']==0)
{
next=v.size();
blanc.val=next;
v.push_back(blanc);
l[nod].push_back(next);
car[c[p]-'a'].push_back(nod);
}
else next=v[nod].f[c[p]-'a'];
if(p!=en) add(p+1,en,next);
}