6 条题解

  • 3
    @ 2024-9-16 14:03:30
    #include<stdio.h>
    int main(){
        int a,b,c,i;
    	scanf("%d%d%d",&a,&b,&c);
    	for(i=10000;;i--){
    		if(a%i==0&&b%i==0&&c%i==0){
    			break;
    		}
    	}
    	printf("%d",i);
    	return 0;
    }
    //当她为你而来,再多的技巧都是多余。
    
    • 0
      @ 2023-11-21 20:23:30

      gcd

      #include<stdio.h>
      int gcd(int a,int b)
      {
      	if(b==0){
      		return a;
      	}
      	else{
      		return gcd(b,a%b);
      	}
      }
      int main()
      {
      	int a,b,c,n;
      	scanf("%d%d%d",&a,&b,&c);
      	n=gcd(a,b);
      	n=gcd(n,c);
      	printf("%d",n);
      	return 0;
      }
      
      
      • 0
        @ 2023-9-19 23:10:31

        暴力算法(问就是懒得想其他算法):

        #include <stdio.h> 
        int main() {
            int n,a,b,c;
            scanf("%d%d%d",&a,&b,&c);
            for(int i=1;;i++){
                if(a%i==0&&b%i==0&&c%i==0)
                n=i;
                if(i==a||i==b||i==c)
                break;
            }
            printf("%d",n);
            return 0;
        }
        
        • 0
          @ 2023-9-16 22:51:32

          辗转相除法

          int main()
          {
              int a,b,c;
              int i,m;
              scanf("%d %d %d",&a,&b,&c);
              while(i=a%b){
                  a=b;
                  b=i;
              }
              while(m=b%c){
                  b=c;
                  c=m;
              }
              printf("%d",c);    
              return 0;
          }
          
          • 0
            @ 2023-9-12 10:44:48
            递归法:
            #include<stdio.h>
            int main(){
                int b,i,j,n,m;
                    scanf("%d %d %d",&i,&j,&n);
                    while(i%j!=0)
                    {
                        b=i%j;
                        i=j;
                        j=b;
                    }
                    while(j%n!=0)
                    {
                        m=j%n;
                        j=n;
                        n=m;
                    }
                    printf("%d\n",n);
                return 0;
            }
            
            • 0
              @ 2023-8-22 20:41:53

              #include <stdio.h> int main() { int a,b,c,min; scanf("%d %d %d",&a,&b,&c); min=a; if (min>b){ min=b; }if (min>c){ min=c; } int gcd; for (int i=1;i<=min;i++){ if (a%i0&&b%i0&&c%i==0){ gcd=i; } } printf("%d",gcd); return 0; }

              • 1

              信息

              ID
              217
              时间
              1000ms
              内存
              128MiB
              难度
              3
              标签
              (无)
              递交数
              658
              已通过
              332
              上传者