洛谷题单2-P1888 三角函数-python-流程图重构

题目描述

输入一组勾股数 a , b , c ( a ≠ b ≠ c ) a,b,c(a\neq b\neq c) a,b,ca=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]

方式-math.gcd

代码

class Solution:
    @staticmethod
    def oi_input():
        """从标准输入读取数据"""
        sides = list(map(int, input().split()))
        return sides

    @staticmethod
    def oi_test():
        """提供测试数据"""
        return [3, 4, 5]

    @staticmethod
    def solution(sides):
        import math

        sides.sort()
        a, b, c = sides[0], sides[1], sides[2]

        n = math.gcd(a, c)

        print("{:}/{:}".format(a // n, c // n))


oi_input = Solution.oi_input
oi_test = Solution.oi_test
solution = Solution.solution

if __name__ == '__main__':
    sides = oi_test()
    # sides = oi_input()
    solution(sides)

流程图

开始
主函数调用
读取输入数据
sides = list(map(int, input().split()))
排序数组
sides.sort()
解包变量
a,b,c = sides[0],sides[1],sides[2]
导入math模块
计算公约数
n = math.gcd(a, c)
格式化输出
print(f'{a//n}/{c//n}')
结束

你可能感兴趣的:(LuoGu-python,python,算法,开发语言)