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;
#define needforspeed ios::sync_with_stdio(0);cin.tie(0);
#define int long long int
#define pb push_back
#define ins insert
#define endl '\n'
#define putr(x) cout<<x<<endl;return;
#define all(x) x.begin(),x.end()
#define _ << " " <<
const int mod = 1e9 +7,sze = 2e5 +23,inf = INT_MAX, L = 31;
void opt1z(){
int n;
cin>>n;
string s;
cin>>s;
pair<int,int> ans={1,1};
double ap = 1.0;
for(int d=1;d<=26;d++){
// cout<<d<<" =>> "<<endl;
map<char,int> cnt;
int subd = 0;
int l =0;
int r = 0;
while(r<n){
cnt[s[r]]++;
if(cnt[s[r]]==1){
subd++;
}
while(subd>d){
cnt[s[l]]--;
if(cnt[s[l]]==0){
subd--;
}
l++;
}
double bp = (subd+.0) / (r-l +1);
if(bp<ap){
ap = bp;
ans.first = l+1;
ans.second = r+1;
}
r++;
}
}
cout<<ans.first<<" "<<ans.second<<endl;
}
signed main() {
needforspeed;
int tt = 1;
// cin>>tt;
while(tt--){
opt1z();
}
return 0;
}
# | 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... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |