#include <iostream>
#include <vector>
#include <algorithm>
#include <array>
#include <cmath>
#include <iomanip>
using namespace std;
typedef long long ll;
typedef long double ld;
#define int ll
int32_t main()
{
ios::sync_with_stdio(0);
cin.tie(0);
cout.tie(0);
int k;
cin>>k;
string s;
cin>>s;
int n=s.size();
int gx,gy,lx,ly;
cin>>gx>>gy>>lx>>ly;
gx-=lx;
gy-=ly;
int cx=0,cy=0;
for(int i=0;i<n;i++)
{
// cout<<s[i]<<endl;
switch(s[i])
{
case 'L':
cx--;
break;
case 'R':
cx++;
break;
case 'F':
cy++;
break;
case 'B':
cy--;
break;
default:;
};
}
int mi=gx*gx + gy*gy;
int mx=gx*gx+gy*gy;
for(int i=0;i<n;i++)
{
switch(s[i])
{
case 'L':
gx--;
break;
case 'R':
gx++;
break;
case 'F':
gy++;
break;
case 'B':
gy--;
break;
default:;
};
// cout<<cx<<' '<<cy<<endl;
// for(int m=0;m<=k;m++)
// {
// int nx=gx+m*cx,ny=gy+m*cy;
// cout<<(nx*nx+ny*ny)<<' ';
// }
// cout<<endl;
int l=-1,r=k-1;
while(l+1<r)
{
int m=(l+r)/2;
int nx=gx+m*cx,ny=gy+m*cy;
int nx1=nx+cx,ny1=ny+cy;
if((nx*nx)+(ny*ny) <= (nx1*nx1)+(ny1*ny1))
{
r=m;
}
else
{
l=m;
}
}
int nx=gx+r*cx,ny=gy+r*cy;
mi=min(mi,nx*nx + ny*ny);
r=k-1; // we using some prefix
nx=gx+r*cx,ny=gy+r*cy;
mx=max(mx,nx*nx + ny*ny);
r=0;
nx=gx+r*cx,ny=gy+r*cy;
mx=max(mx,nx*nx + ny*ny);
}
cout.precision(10);
cout<<fixed<<sqrtl(mi)<<' '<<sqrtl(mx)<<endl;;
}