#include <cstdio>
#include <iostream>
#include <complex>
#include <vector>
#include <utility>
#include <algorithm>
#include <cassert>
#include <queue>
#include <cstdio>
#include <cstdlib>
#include <cstring>
#include <map>
using namespace std;
#define rep(i, n) for (int i = 0; i < (int)(n); i++)
int R, N;
int main() {
for (;;) {
cin >> R >> N;
if (R == 0 && N == 0) return 0;
map<int, int> hmax;
rep (i, N) {
int x1, x2, h;
cin >> x1 >> x2 >> h;
for (int x = x1; x < x2; ++x) hmax[x] = max(hmax[x], h);
}
double ans = 1E30;
for (int x0 = -R; x0 < R; ++x0) {
int h = hmax[x0];
for (int x = x0; x <= x0 + 1; ++x) {
ans = min(ans, h - sqrt(R * R - x * x) + R);
}
}
printf("%.10f\n", ans);
}
}
I2luY2x1ZGUgPGNzdGRpbz4KI2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8Y29tcGxleD4KI2luY2x1ZGUgPHZlY3Rvcj4KI2luY2x1ZGUgPHV0aWxpdHk+CiNpbmNsdWRlIDxhbGdvcml0aG0+CiNpbmNsdWRlIDxjYXNzZXJ0PgojaW5jbHVkZSA8cXVldWU+CiNpbmNsdWRlIDxjc3RkaW8+CiNpbmNsdWRlIDxjc3RkbGliPgojaW5jbHVkZSA8Y3N0cmluZz4KI2luY2x1ZGUgPG1hcD4KdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCiNkZWZpbmUgcmVwKGksIG4pIGZvciAoaW50IGkgPSAwOyBpIDwgKGludCkobik7IGkrKykKCmludCBSLCBOOwoKaW50IG1haW4oKSB7CiAgZm9yICg7OykgewogICAgY2luID4+IFIgPj4gTjsKICAgIGlmIChSID09IDAgJiYgTiA9PSAwKSByZXR1cm4gMDsKCiAgICBtYXA8aW50LCBpbnQ+IGhtYXg7CgogICAgcmVwIChpLCBOKSB7CiAgICAgIGludCB4MSwgeDIsIGg7CiAgICAgIGNpbiA+PiB4MSA+PiB4MiA+PiBoOwogICAgICBmb3IgKGludCB4ID0geDE7IHggPCB4MjsgKyt4KSBobWF4W3hdID0gbWF4KGhtYXhbeF0sIGgpOwogICAgfQoKICAgIGRvdWJsZSBhbnMgPSAxRTMwOwogICAgZm9yIChpbnQgeDAgPSAtUjsgeDAgPCBSOyArK3gwKSB7CiAgICAgIGludCBoID0gaG1heFt4MF07CiAgICAgIGZvciAoaW50IHggPSB4MDsgeCA8PSB4MCArIDE7ICsreCkgewogICAgICAgIGFucyA9IG1pbihhbnMsIGggLSBzcXJ0KFIgKiBSIC0geCAqIHgpICsgUik7CiAgICAgIH0KICAgIH0KICAgIHByaW50ZigiJS4xMGZcbiIsIGFucyk7CiAgfQp9Cg==
MiAzCi0yIC0xIDMKMCAxIDMKMiAzIDMKMiAyCi0yIDAgNAowIDIgMwoyIDYKLTMgMyAxCi0yIDMgMgotMSAzIDMKMCAzIDQKMSAzIDUKMiAzIDYKMiA2Ci0zIDMgMQotMyAyIDIKLTMgMSAzCi0zIDAgNAotMyAtMSA1Ci0zIC0yIDYKMCAw
2 3
-2 -1 3
0 1 3
2 3 3
2 2
-2 0 4
0 2 3
2 6
-3 3 1
-2 3 2
-1 3 3
0 3 4
1 3 5
2 3 6
2 6
-3 3 1
-3 2 2
-3 1 3
-3 0 4
-3 -1 5
-3 -2 6
0 0