1408191710-hd-Just A Triangle.cpp

来源:互联网 发布:速卖通第三方软件 编辑:程序博客网 时间:2024/05/18 00:34

Just A Triangle

Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)

Total Submission(s): 2120 Accepted Submission(s): 1404


 

Problem Description

  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.

 


 

Input

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).

 


 

Output

For each case, output the answer in one line.

 


 

Sample Input

43 4 52 2 3 1 4 44 6 3

 


 

Sample Output

goodperfectperfectjust a triangle

 


 

 

题目大意

      给你三个数,如果可以组成直角三角形,就输出good,如果可以组成等腰三角形,就输出perfect,如果不符合这两种情况就输出just a triangle。

 

额外收获

       1、判断是否可以组成三角形:

            两边之和大于第三边&&两边之差小于第三边

       2、warm up     热身

 

代码

<span style="font-size:18px;">#include<stdio.h>#include<algorithm>using namespace std;int s[5];int main(){int n;int a,b,c;scanf("%d",&n);while(n--){scanf("%d%d%d",&s[0],&s[1],&s[2]);sort(s,s+3);if(s[0]+s[1]>s[2]&&s[2]-s[1]<s[0]){if(s[0]*s[0]+s[1]*s[1]==s[2]*s[2])    printf("good\n");else if(s[0]==s[1]||s[0]==s[2]||s[1]==s[2])    printf("perfect\n");else    printf("just a triangle\n");}}return 0;}</span>


 

0 0
原创粉丝点击