2014
03-06

# Just A Triangle

This is an easy problem, just for you to warm up.
Give you three edges of a triangle. Can you tell me which kind of triangle it stands for?
If it’s a right triangle(直角三角形), please output “good”. If it’s a isosceles triangle(等腰三角形), please output “perfect”. Otherwise, please output “just a triangle”. You may suppose the input is legal.

The first line contains an integer t means the number of test cases.
The each case contains three integers a, b, c in a line which stands for the length of the three edges.
(0 <a, b, c < 300).

The first line contains an integer t means the number of test cases.
The each case contains three integers a, b, c in a line which stands for the length of the three edges.
(0 <a, b, c < 300).

4
3 4 5
2 2 3
1 4 4
4 6 3

good
perfect
perfect
just a triangle

#include <iostream>
using namespace std;

int main()
{
int n,a,b,c;
cin >> n;
while(n--)
{
cin >> a >> b >> c;
if(a+b > c && a+c > b && b+c > a)
{
if(a == b || b == c || a == c)
cout << "perfect" << endl;
else
if(a*a+b*b==c*c || b*b+c*c==a*a || a*a+c*c==b*b )
cout << "good" << endl;
else
cout << "just a triangle" << endl;
}
}

return 0;
}