#include <bits/stdc++.h>
#define f0(i, n) for(int i(0); i<(n); i++)
#define f1(i, n) for(int i(1); i<=(n); i++)
#define mu2(x) ((x)*(x))
using namespace std;
typedef long long ll;
const int N = 1e4 + 4;
int n, k, toado1, toado2, g1, g2;
string s;
double dist(int x2, int y2, int x3, int y3){
int g = mu2(x3 - x2) + mu2(y3 - y2);
return sqrt((double)g);
}
int main(){
ios_base::sync_with_stdio(0);
cin >> k; cin >> s;
n = s.length();
cin >> toado1 >> toado2 >> g1 >> g2;
if(n <= 2000 && k <= 20000){
double mi = 2e9, ma = 0;
ma = max(ma, dist(toado1, toado2, g1, g2));
mi = min(mi, dist(toado1, toado1, g1, g2));
for(int i = 0; i < n*k; i++){
int u = i%n;
if(s[u]=='L') --g1;
if(s[u]=='R') ++g1;
if(s[u]=='F') ++g2;
if(s[u]=='B') --g2;
if(s[u] != 'I') continue;
ma = max(ma, dist(toado1, toado2, g1, g2));
mi = min(mi, dist(toado1, toado1, g1, g2));
}
cout << fixed << setprecision(10) << mi << " " << ma;
}
}
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Incorrect |
203 ms |
360 KB |
Output isn't correct |
2 |
Halted |
0 ms |
0 KB |
- |