Submission #1012455

#TimeUsernameProblemLanguageResultExecution timeMemory
1012455AlmontherDifference (POI11_roz)C++98
30 / 100
699 ms26428 KiB
#include<bits/stdc++.h> #define ll long long #define co cout<< #define suiii ios_base::sync_with_stdio(0);cin.tie(0);cout.tie(0); using namespace std; // stuff ll n; string s; ll mx=0; vector<ll>v[28]; void solve(){ cin>>n>>s; for(int i=0;i<n;i++) v[s[i]-'a'].push_back(i); for(int i=0;i<26;i++){ if(v[i].size()==0) continue; for(int j=0;j<26;j++){ ll l,r; l=r=0; vector<ll>arr; while(l!=v[i].size()||r!=v[j].size()){ if(l==v[i].size()){ r++; arr.push_back(-1); } else if(r==v[j].size()){ l++; arr.push_back(1); } else{ if(v[i][l]<v[j][r]){ l++; arr.push_back(1); } else{ r++; arr.push_back(-1); } } } ll curr=0; ll mn=1e18; for(auto k:arr){ curr+=k; mx=max(mx,curr-mn); if(k==-1){ mn=min(mn,curr); } } } } co mx; } int main(){ suiii int tt=1; // cin>>tt; while(tt--){ solve(); } }

Compilation message (stderr)

roz.cpp: In function 'void solve()':
roz.cpp:21:20: warning: comparison of integer expressions of different signedness: 'long long int' and 'std::vector<long long int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   21 |             while(l!=v[i].size()||r!=v[j].size()){
      |                   ~^~~~~~~~~~~~~
roz.cpp:21:36: warning: comparison of integer expressions of different signedness: 'long long int' and 'std::vector<long long int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   21 |             while(l!=v[i].size()||r!=v[j].size()){
      |                                   ~^~~~~~~~~~~~~
roz.cpp:22:21: warning: comparison of integer expressions of different signedness: 'long long int' and 'std::vector<long long int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   22 |                 if(l==v[i].size()){
      |                    ~^~~~~~~~~~~~~
roz.cpp:26:26: warning: comparison of integer expressions of different signedness: 'long long int' and 'std::vector<long long int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   26 |                 else if(r==v[j].size()){
      |                         ~^~~~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...