2 条题解

  • 0
    @ 2026-7-20 1:41:55

    P1888 三角函数——题解

    解题思路

    排序后三条边为 short <= middle <= hypotenuse。较小锐角所对的是最短直角边,所以正弦值为“最短边/斜边”。用最大公约数约分。

    正确性说明

    在直角三角形中,边越短,对角越小;正弦等于对边除以斜边。因此较小锐角的正弦为最短边与最大边之比。除以二者最大公约数后得到最简分数。

    复杂度分析

    时间和空间复杂度均为 O(1)O(1)

    C++17 参考代码

    #include <bits/stdc++.h>
    using namespace std;
    int main(){
        long long a[3];cin>>a[0]>>a[1]>>a[2];sort(a,a+3);
        long long g=gcd(a[0],a[2]);
        cout<<a[0]/g<<'/'<<a[2]/g<<'\n';return 0;
    }
    
    • 0
      @ 2026-7-20 1:41:55

      #include <bits/stdc++.h> using namespace std; int main(){ long long a[3];cin>>a[0]>>a[1]>>a[2];sort(a,a+3); long long g=gcd(a[0],a[2]); cout<<a[0]/g<<'/'<<a[2]/g<<'\n';return 0; }

      • 1

      信息

      ID
      4898
      时间
      2000ms
      内存
      256MiB
      难度
      10
      标签
      递交数
      1
      已通过
      0
      上传者