Java SDUT-2562_相似三角形

相似三角形

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

import java.util.*;

public class Main
{
	public static void main(String[] args)
	{
		Scanner cin = new Scanner(System.in);
		san a,b;
		while(cin.hasNextLine())
		{
			a = new san(cin.nextInt(),cin.nextInt(),cin.nextInt());
			b = new san(cin.nextInt(),cin.nextInt(),cin.nextInt());
			if(judge(a,b)==0)
				System.out.println("NO");
			else
				System.out.println("YES");
		}
		cin.close();
	}
	static int judge(san a,san b)
	{
		a.pai();
		b.pai();
		if(a.a+a.b<=a.c||b.a+b.b<=b.c)
			return 0;
		if(a.a/b.a==a.b/b.b&&a.b/b.b==a.c/b.c)
			return 1;
		return 0;
	}
}

class san
{
	double a,b,c;
	san(int a,int b,int c)
	{
		this.a = a;
		this.b = b;
		this.c = c;
	}
	void pai()
	{
		double t;
		if(a>b)
		{
			t = a;
			a = b;
			b = t;
		}
		if(a>c)
		{
			t = a;
			a = c;
			c = t;
		}
		if(b>c)
		{
			t = b;
			b = c;
			c = t;
		}
	}
}
原文地址:https://www.cnblogs.com/luoxiaoyi/p/9889894.html