Submission #116825

#TimeUsernameProblemLanguageResultExecution timeMemory
116825LichtLozinke (COCI17_lozinke)C++14
100 / 100
480 ms16608 KiB
#include <bits/stdc++.h> using namespace std; #define int long long #define vt vector #define pb push_back #define pob pop_back #define vi vt<int> #define vvi vt<vi> #define vii vt<ii> #define vvii vt<vii> typedef long long ll; #define For(i,a,b) for(int i = a; i < b; i++) #define foR(i,a,b) for(int i = a; i <= b; i++) #define roF(i,a,b) for(int i = a - 1; i >= b; i--) #define Rof(i,a,b) for(int i = a; i >= b; i--) vector<string> v; map<string,int> dx; map<string,bool> dc; bool cmp(string a, string b){ return a.size() < b.size(); } signed main (){ /* freopen(".inp","r",stdin); freopen(".out","w",stdout); */ int n, coun = 0; cin >> n; string t; For(i,0,n){ cin >> t; v.pb(t); } sort(v.begin(),v.end(),cmp); For(i,0,n){ // cout << v[i] << "\n"; dc.clear(); //nc For(j,0,v[i].size()){ string temp; For(k,j,v[i].size()){ temp += v[i][k]; if((!dc[temp]) && dx[temp]){ dc[temp] = true; coun+=dx[temp]; } } } coun+=dx[v[i]]; dx[v[i]]++; // cout << coun << "\n"; } cout << coun; }

Compilation message (stderr)

lozinke.cpp: In function 'int main()':
lozinke.cpp:12:37: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
 #define For(i,a,b) for(int i = a; i < b; i++)
lozinke.cpp:41:7:
   For(j,0,v[i].size()){
       ~~~~~~~~~~~~~~~                
lozinke.cpp:41:3: note: in expansion of macro 'For'
   For(j,0,v[i].size()){
   ^~~
lozinke.cpp:12:37: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
 #define For(i,a,b) for(int i = a; i < b; i++)
lozinke.cpp:43:8:
    For(k,j,v[i].size()){
        ~~~~~~~~~~~~~~~               
lozinke.cpp:43:4: note: in expansion of macro 'For'
    For(k,j,v[i].size()){
    ^~~
#Verdict Execution timeMemoryGrader output
Fetching results...