➤ Problem Link : 940D. Alena And The Heater
✅ C++ Solution :
#include<bits/stdc++.h>
using namespace std;
#define ll long long int
int main()
{
int n;
cin>>n;
ll arr[n+1];
char b[n+1];
for(int i=1;i<=n;i++)
cin>>arr[i];
for(int i=1;i<=n;i++)
cin>>b[i];
ll lmin=-1*pow(10,9),lmax=1*pow(10,9);
ll rmin=-1*pow(10,9),rmax=1*pow(10,9);
bool flag=1;
for(int i=5;i<=n;i++)
{
if(b[i]==b[i-1])
continue;
if(b[i]=='0')
{
rmax=min(rmax,min(arr[i-4],min(arr[i-3],min(arr[i-2],min(arr[i-1],arr[i]))))-1);
}
else
{
lmin=max(lmin,max(arr[i-4],max(arr[i-3],max(arr[i-2],max(arr[i-1],arr[i]))))+1);
}
}
cout<<lmin<<" "<<rmax;
}
Thank you for your patience reading. If you enjoyed this post, I’d be very grateful if you’d help it spread by emailing it to a friend, or sharing it on Whatsapp or Facebook.
😇Happy Learning!!
