相似三角形
Time Limit: 1000 ms
Memory Limit: 65536 KiB
Problem Description
给出两个三角形的三条边,判断是否相似。
Input
多组数据,给出6正个整数,a1,b1,c1,a2,b2,c2,分别代表两个三角形。(边长小于100且无序)
Output
如果相似输出YES,如果不相似输出NO,如果三边组不成三角形也输出NO。
Sample Input
1 2 3 2 4 6 3 4 5 6 8 10 3 4 5 7 8 10
Sample Output
NO YES NO
Hint
Source
import java.util.*;
public class Main{
public static void main(String args[]){
Scanner input = new Scanner(System.in);
int t, a1, a2, b1, b2, c1, c2;
while(input.hasNext()){
a1 = input.nextInt();
b1 = input.nextInt();
c1 = input.nextInt();
a2 = input.nextInt();
b2 = input.nextInt();
c2 = input.nextInt();
if(a1 > c1){
t = a1; a1 = c1; c1 = t;
}
if(b1 > c1){
t = b1; b1 = c1; c1 = t;
}
if(a1 > b1){
t = a1; a1 = b1; b1 = t;
}
if(a2 > c2){
t = a2; a2 = c2; c2 = t;
}
if(b2 > c2){
t = b2; b2 = c2; c2 = t;
}
if(a2 > b2){
t = a2; a2 = b2; b2 = t;
}
boolean flag = true;
if(a1+b1 <= c1 || a2+b2 <= c2){//判断两组数据能不能构成三角形
flag = false;
}
else if(a1*b2 != b1*a2 || a1*c2 != a2*c1){//判断两个三角形是否相似(推荐使用判断对应边是否成比例来判断)
flag = false;
}
if(flag) System.out.println("YES");
else System.out.println("NO");
}
input.close();
}
}