5 条题解

  • 1
    @ 2025-1-5 11:16:01

    我们可以使用a2+b2=c2a^2+b^2=c^2

    • 0
      @ 2024-12-29 9:02:48

      Python更简单?

      x=int(input());
      y=int(input());
      z=int(input());
      if x*x+y*y==z*z:
          print(int(x*y/z));
      elif x*x+z*z==y*y:
          print(int(x*z/y));
      elif y*y+z*z==x*x:
          print(int(y*z/x));
      else:
          print('no');
      
      • 0
        @ 2024-12-22 18:02:28

        先提一句勾股定理:a2+b2=c2a^2+b^2=c^2

        于是这题直接秒了:

        #include<bits/stdc++.h>
        using namespace std;
        int main()
        {
        	int a,b,c;
        	cin>>a>>b>>c;//鉴定为,这个人懒得开数组。
        	if(a*a+b*b==c*c)
        	{
        		cout<<a*b/c;
        	}
        	else if(a*a+c*c==b*b)
        	{
        		cout<<a*c/b;
        	}
        	else if(c*c+b*b==a*a)
        	{
        		cout<<c*b/a;
        	}//别问上面为什么写那么麻烦写了一堆 else if 问就是要判两条直角边到底是 a 还是 b 还是 c
        	else
        	{
        		cout<<"no";
        	}//如果不是直角三角形直接就输出 no
        	return 0;//结束。
        }
        
        • 0
          @ 2024-12-22 11:15:49

          须知勾股定理: a2+b2=c2a^2+b^2=c^2

          #include<bits/stdc++.h>
          using namespace std;
          signed main(){
          	int a[4];
          	cin>>a[1]>>a[2]>>a[3];
          	sort(a+1,a+4);
          	if(a[1]*a[1]+a[2]*a[2]!=a[3]*a[3])cout<<"no";//勾股定理
          	else cout<<a[1]*a[2]/a[3];
          	
          }
          
          • 0
            @ 2024-12-22 11:03:50

            C++ :

            #include<bits/stdc++.h>
            using namespace std;
            int a[3]; 
            int main()
            {
            cin>>a[0]>>a[1]>>a[2];
            sort(a,a+3);
            if(a[0]*a[0]+a[1]*a[1]==a[2]*a[2])
            	{
            	int c=a[0]*a[1]/a[2];
            	cout<<c;
            	}
            else
            	cout<<"no";
            } 
            

            Python :

            # coding=utf-8
            a=float(input())
            b=float(input())
            c=float(input())
            aa=min([a,b,c])
            cc=max([a,b,c])
            bb=a+b+c-aa-cc
            
            if aa**2+bb**2==cc**2:
                print(int(aa*bb/cc))
            else:
                print("no")
            
            • 1

            信息

            ID
            2
            时间
            5000ms
            内存
            128MiB
            难度
            4
            标签
            递交数
            92
            已通过
            43
            上传者