#include <bits/stdc++.h>
using namespace std;
#define int long long
#define ll long long
#define ld long double
struct pt {
ld x, y;
void take() {
int xx,yy;
cin>>xx>>yy;
x=xx,y=yy;
}
};
const ld EPS = 1e-6;
ld dist(pt p1, pt p2) {
return sqrt((p2.x - p1.x) * (p2.x - p1.x) + (p2.y - p1.y) *(p2.y - p1. y));
}
bool check_inside(pt p, ld r, pt center) {
ld d = dist(p, center);
if (d < r)
return true;
return (abs(dist(p, center) - r) <= EPS);
}
ld crossProduct(pt p1,pt p2,pt p3){
return (p2.x - p1.x) * (p3.y - p1.y) - (p2.y - p1.y) * (p3.x - p1.x);
}
void solve() {
int d; cin >>d;
ld r = d * .5;
pt p1, p2;
p1.take();
p2.take();
// if (p1.x == p2.x) {
// cout << 0;
// return;
// }
pt center = {r, r};
if (!check_inside(p1, r, center) ||!check_inside(p2, r, center)) {
cout << 0;
return;
}
const ld PI = acos(-1);
ld c = dist(p1, p2);
ld a = dist(p1,center );
ld b = dist(p2, center );
ld co = a *a + b *b - c *c;
ld den = 2 * a *b;
co /= den;
ld angle = acos(co);
angle *= 180;
angle /= (ld)PI;
ld walk = angle / (ld)360;
walk *= 60;
ld speed = 33 +( ld)1 / 3.0;
walk /= speed;
ld cross=crossProduct(center,p1,p2);
if(cross>0){
walk *= -1;
}
cout << setprecision(10) << fixed;
cout <<walk << endl;
}
signed main() {
ios_base::sync_with_stdio(false);
cin.tie(NULL);
cout.tie(NULL);
int t = 1;
// cin >> t;
while (t--) {
solve();
}
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CiNkZWZpbmUgaW50IGxvbmcgbG9uZwojZGVmaW5lIGxsIGxvbmcgbG9uZwojZGVmaW5lIGxkIGxvbmcgZG91YmxlIApzdHJ1Y3QgcHQgewogICAgbGQgeCwgeTsKICAgIHZvaWQgdGFrZSgpIHsKICAgICAgICBpbnQgeHgseXk7CiAgICAgICAgY2luPj54eD4+eXk7CiAgICAgICAgeD14eCx5PXl5OwoKICAgIH0KfTsKCgpjb25zdCBsZCBFUFMgPSAxZS02OwoKbGQgZGlzdChwdCBwMSwgcHQgcDIpIHsKICAgIHJldHVybiBzcXJ0KChwMi54IC0gcDEueCkgKiAocDIueCAtIHAxLngpICsgKHAyLnkgLSBwMS55KSAqKHAyLnkgLSBwMS4geSkpOwp9Cgpib29sIGNoZWNrX2luc2lkZShwdCBwLCBsZCByLCBwdCBjZW50ZXIpIHsKICAgIGxkIGQgPSBkaXN0KHAsIGNlbnRlcik7CiAgICBpZiAoZCA8IHIpCiAgICAgICAgcmV0dXJuIHRydWU7CiAgICByZXR1cm4gKGFicyhkaXN0KHAsIGNlbnRlcikgLSAgcikgPD0gRVBTKTsKfQpsZCBjcm9zc1Byb2R1Y3QocHQgcDEscHQgcDIscHQgcDMpewogICAgcmV0dXJuIChwMi54IC0gcDEueCkgKiAocDMueSAtIHAxLnkpIC0gKHAyLnkgLSBwMS55KSAqIChwMy54IC0gcDEueCk7Cn0Kdm9pZCBzb2x2ZSgpIHsKICAgIGludCBkOyBjaW4gPj5kOwogICAgbGQgciA9IGQgKiAuNTsKICAgIHB0IHAxLCBwMjsKICAgIHAxLnRha2UoKTsKICAgIHAyLnRha2UoKTsKICAgIC8vIGlmIChwMS54ID09IHAyLngpIHsKICAgIC8vICAgICBjb3V0IDw8IDA7CiAgICAvLyAgICAgcmV0dXJuOwogICAgLy8gfQogICAgcHQgY2VudGVyID0ge3IsIHJ9OwogICAgaWYgKCFjaGVja19pbnNpZGUocDEsIHIsIGNlbnRlcikgfHwhY2hlY2tfaW5zaWRlKHAyLCByLCBjZW50ZXIpKSB7CiAgICAgICAgY291dCA8PCAwOwogICAgICAgIHJldHVybjsKICAgIH0KCiAgICBjb25zdCBsZCBQSSA9IGFjb3MoLTEpOwogICAgbGQgYyA9IGRpc3QocDEsIHAyKTsKICAgIGxkIGEgPSBkaXN0KHAxLGNlbnRlciApOwogICAgbGQgYiA9IGRpc3QocDIsIGNlbnRlciApOwogICAgbGQgY28gPSAgIGEgKmEgKyBiICpiIC0gYyAqYzsKICAgIGxkIGRlbiA9IDIgKiBhICpiOwogICAgY28gLz0gZGVuOwogICAgbGQgYW5nbGUgPSBhY29zKGNvKTsKICAgIGFuZ2xlICo9IDE4MDsKICAgIGFuZ2xlIC89IChsZClQSTsKICAgIGxkIHdhbGsgPSBhbmdsZSAvIChsZCkzNjA7CiAgICB3YWxrICo9IDYwOwogICAgbGQgc3BlZWQgPSAzMyArKCBsZCkxIC8gMy4wOwogICAgd2FsayAvPSBzcGVlZDsKICAgIGxkIGNyb3NzPWNyb3NzUHJvZHVjdChjZW50ZXIscDEscDIpOwogICAgaWYoY3Jvc3M+MCl7CgogICAgd2FsayAqPSAtMTsKICAgIH0gCiAgICBjb3V0IDw8IHNldHByZWNpc2lvbigxMCkgPDwgZml4ZWQ7CiAgICBjb3V0IDw8d2FsayA8PCBlbmRsOwp9CgpzaWduZWQgbWFpbigpIHsKICAgIGlvc19iYXNlOjpzeW5jX3dpdGhfc3RkaW8oZmFsc2UpOwogICAgY2luLnRpZShOVUxMKTsKICAgIGNvdXQudGllKE5VTEwpOwoKICAgIGludCB0ID0gMTsKICAgIC8vIGNpbiA+PiB0OwogICAgd2hpbGUgKHQtLSkgewogICAgICAgIHNvbHZlKCk7CiAgICB9CgogICAgcmV0dXJuIDA7Cn0gICA=