👨?💻博客主页:@花无缺
欢迎 点赞👍 收藏? 留言📝 加关注?!
本文由 花无缺 原创收录于专栏 【洛谷算法题】
输入一组勾股数 a , b , c ( a ≠ b ≠ c ) a,b,c(a\neq b\neq c) a,b,c(a=b=c),用分数格式输出其较小锐角的正弦值。(要求约分。)
一行,包含三个正整数,即勾股数 a , b , c a,b,c a,b,c(无大小顺序)。
一行,包含一个分数,即较小锐角的正弦值
3 5 4
3/5
数据保证: a , b , c a,b,c a,b,c 为正整数且 ∈ [ 1 , 1 0 9 ] \in [1,10^9] ∈[1,109]。
import java.util.Scanner;
import java.util.Arrays;
public class P1888 {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
// 将三角形三边边长存储在数组中
int[] a = new int[3];
for (int i = 0; i < a.length; i++) {
a[i] = in.nextInt();
}
// 将数组按从小到大排序
Arrays.sort(a);
// 最短边与最长边的比值就是较小锐角的正弦值
// 对最短边和最长边进行约分
int n = a[0];
while (n > 0) {
if (a[0] % n == 0 && a[2] % n == 0) {
a[0] = a[0] / n;
a[2] = a[2] / n;
break;
}
n--;
}
System.out.println(a[0] + "/" + a[2]);
in.close();
}
}
根据初中数学知识我们知道三角形中较小锐角的正弦值即是三角形最短边与最长边的比值。所以我们只需要找到三角形的最短边和最长边,然后对其比值进行约分即可得到最后的结果。
🌸欢迎
关注
我的博客:花无缺-每一个不曾起舞的日子都是对生命的辜负~
🍻一起进步-刷题专栏:【洛谷算法题】
💻Java题解同步仓库:https://github.com/huawuque404/Java-solution
🥇往期精彩好文:
📢【一文带你了解网页的灰色效果是如何实现的】
📢【CSS选择器全解指南】
📢【HTML万字详解】
你们的点赞👍 收藏? 留言📝 关注?
是我持续创作,输出优质内容
的最大动力!
谢谢!