# | TimeUTC-0 | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
515899 | amunduzbaev | Selling RNA Strands (JOI16_selling_rna) | C++14 | 1599 ms | 70604 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"
using namespace std;
#include <ext/pb_ds/assoc_container.hpp>
using namespace __gnu_pbds;
#define ar array
const int N = 2e6 + 5;
const int P = 167;
const int mod = (119 << 23) + 1;
signed main(){
ios::sync_with_stdio(0); cin.tie(0);
int n, m; cin>>n>>m;
vector<string> s(n), r(n);
vector<vector<int>> pref(n), suff(n);
for(int i=0;i<n;i++){
cin>>s[i];
} sort(s.begin(), s.end());
for(int i=0;i<n;i++){
pref[i].resize(s[i].size());
suff[i].resize(s[i].size());
r[i] = s[i];
reverse(r[i].begin(), r[i].end());
for(int j=0;j<(int)s[i].size();j++){
if(j) pref[i][j] = pref[i][j-1], suff[i][j] = suff[i][j-1];
pref[i][j] = (pref[i][j] * 1ll * P + s[i][j]) % mod;
suff[i][j] = (suff[i][j] * 1ll * P + r[i][j]) % mod;
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |