17http://ideone.com/jhqkJa17 Przechodzi test 100 50 105 9, a mimo to WA.
#include <iostream>
#include <cmath>
void vCzyDrugiMiesciSieWPierwszym(int A, int B, int C, int D)// funkcja sprawdza czy drugi prostokat o podanych bokach miesci sie w pierwszym(nie dotykajac jego bokow) o podanych bokach i wypisuje TAK lub NIE
{
// ponizsze dwie instrukcje sortuja boki prostokatow w rosnaco
if(A>B)
{
int zmiennaPomocnicza;
zmiennaPomocnicza=A;
A=B;
B=zmiennaPomocnicza;
}
if(C>D)
{
int zmiennaPomocnicza;
zmiennaPomocnicza=C;
C=D;
D=zmiennaPomocnicza;
}
if(C<A && D<B)
std::cout<<"TAK\n";
else if( D>B && A>((2*D*C*B+(D*D - C*C)*sqrt(D*D+C*C -B*B))/(D*D +C*C)) )
std::cout<<"TAK\n";
else
std::cout<<"NIE\n";
}
int main()
{
int nLiczbaTestow;
std::cin>>nLiczbaTestow;
int A, B, C, D;
for(int i=1; i<=nLiczbaTestow; i++)
{
std::cin>>A>>B>>C>>D;
vCzyDrugiMiesciSieWPierwszym(A, B, C, D);
}
return 0;
}