Zrobiłem zadanie z serwisu spoj okręgi. Mój program działa dla przykładów podanych na spoju ale sędzia na spoju pokazuje mi błędna odpowiedź. Nie wiem gdzie zrobiłem błąd w kodzie. Proszę o pomoc.
Link do zadanie: http://pl.spoj.com/problems/MWP2_2C/
Kod:
#include <iostream>
#include <math.h>
#include <iomanip>
using namespace std;
int main() {
//liczba testow, wspolrzedne srodkow dwoch okregow i promienie dwoch okregow
int t, x1, y1, r1, x2, y2, r2;
//odleglosc miedzy srodkami okregow
double odleglosc;
//wczytanie liczby testow
cin >> t;
//zaokraglanie do dwoch miejsc po przecinku
cout << fixed << setprecision(2);
//petla ktora wykona wszystkie testy
for (int i = 0; i<t; i++) {
//wczytanie wspolrzednych srodkow tych okregow oraz dlugosci promieni
cin >> x1 >> y1 >> r1 >> x2 >> y2 >> r2;
//obliczenie odleglosci miedzy srodkami okregow
odleglosc = sqrt((x1-x2)*(x1-x2)+(y1-y2)*(y1-y2));
//sprawdzenie czy te okregi maja wspolna czesc
if (r1+r2>odleglosc) cout << r1+r2-odleglosc << endl;
else cout << "0.00" << endl;
}
return 0;
}