Submission #515774

#TimeUsernameProblemLanguageResultExecution timeMemory
515774LouayFarahLozinke (COCI17_lozinke)C++14
40 / 100
1090 ms1992 KiB
#include "bits/stdc++.h" using namespace std; #define ll long long int #define pb push_back #define mp make_pair #define fi first #define se second const long long MOD = 998244353; const long long INF = 1e18; int nx[4] = {0, 0, -1, 1}; int ny[4] = {1, -1, 0, 0}; ll my_rand(ll l, ll r) { srand(chrono::steady_clock::now().time_since_epoch().count()); ll len = r-l; ll a = rand()%len; ll b = rand()%len; ll res = ((((a%len)*((RAND_MAX+1)%len))%len) + (b%len))%len; if(res<l) res +=l; return res; } bool substring(string sub, string s) { for(int i = 0; i+int(sub.length())-1<int(s.length()); i++) { bool flag = true; for(int j = 0; j<int(sub.length()); j++) { if(sub[j]!=s[i+j]) { flag = false; break; } } if(flag) return true; } return false; } bool compare(string &a, string &b) { int lena = int(a.length()); int lenb = int(b.length()); if(lena==lenb) return a<=b; return lena<lenb; } int main() { ios_base::sync_with_stdio(false); cin.tie(0); cout.tie(0); ll n; cin >> n; vector<string> arr; for(int i = 0; i<n; i++) { string s; cin >> s; arr.pb(s); } sort(arr.begin(), arr.end(), compare); ll res = 0; for(int i = 0; i<n; i++) { for(int j = i+1; j<n; j++) { if(substring(arr[i], arr[j])) res++; if(substring(arr[j], arr[i])) res++; } } cout << res << endl; return 0; }

Compilation message (stderr)

lozinke.cpp: In function 'long long int my_rand(long long int, long long int)':
lozinke.cpp:24:35: warning: integer overflow in expression of type 'int' results in '-2147483648' [-Woverflow]
   24 |     ll res = ((((a%len)*((RAND_MAX+1)%len))%len) + (b%len))%len;
      |                                   ^
#Verdict Execution timeMemoryGrader output
Fetching results...