17 条题解

  • 5
    @ 2023-9-28 10:56:26

    主打的就是理解

    #include<stdio.h>
    int main(){
    	int a,b,max,min;
    	scanf("%d %d",&a,&b);
    	if(a>b){
    		max=a;
    		min=b;
    	}else{
    		max=b;
    		min=a;
    	}
    	
    	for(int i=min;i>0;i--){
    		if(a%i==0&&b%i==0){
    			printf("%d",i);
    			break;
    		}
    	}
    	
    	return 0;
    }
    
    • 2
      @ 2025-9-6 11:11:18

      一点注释,希望对看不懂的哥们有帮助 #include<stdio.h>

      int main()

      {

      int a,b,max,min;

      scanf("%d %d",&a,&b);//开始判断大小

      if(a>b)

      {

      max=a;

      min=b;

      }

      else

      {

      max=b;

      min=a;

      }

      //极值判断完毕,开始求最大公约数

      for(int i=min;i>0;i--)//最大公约数再大也不能比min大

      {

      if (a%i0&&b%i0)//i同时满足可以整除a,b {

      printf("%d",i);

      break;//i从大到小一个个试,第一次符合条件的便是最大公约数,直接break,不要再继续输出了 }

      }

      return 0;

      }

      • 1
        @ 2024-12-4 21:24:24

        #include<stdio.h> int main() { int A,B; scanf("%d %d",&A,&B); int min; int d; if(A>B) { min=B; } else { min=A; } for(int i=1;i<=min;i++) { if(A%i0&&B%i0) { if(i>d) { d=i; } } } printf("最大公约数为:%d",d); return 0; }

        • 0
          @ 2025-9-28 0:03:55

          #include<stdio.h> int main() {int n,a,i;


          **scanf**(**"%d,%d"**,&**n**,&**a**);
          

          ** if(a>n){i=a;}** else{i=n;}

          ** for(int c=i;c>0;c--** ) ** { ** if(a%c0&&n%c0) ** {printf("%d"**,c);


          **break**;
          

          **}**
          

          ** } ** printf("%d**\n**",a); ** return 0;**


          **}**
          
          • 0
            @ 2025-9-27 21:23:17
            #include <stdio.h>
            int main()
            {
                int a,b,c;
                scanf("%d %d",&a,&b);
                if (a%b==0)c=b;
                while(a%b!=0){c=a%b;
                a=b;
                b=c;}
                printf("%d",c);
            }
            
            • 0
              @ 2025-9-26 1:28:02

              #include <stdio.h> int main() { int a,b,min; scanf("%d %d",&a,&b); if(a>b) { min=b;} else { min=a;} for(int i=min;i>0;i--) { if(a%i0&&b%i0) { printf("%d",i); break; } }

              return 0;
              

              }

              • 0
                @ 2025-9-12 23:02:09
                main :: IO ()
                main = getLine >>= print . (\[a,b] -> gcd a b) . map read . words
                

                依旧函数大手子

                • 0
                  @ 2025-7-2 17:59:30

                  #include<stdio.h> int main() { int a,b,c; scanf("%d %d",&a,&b); c=a%b; if(c==0) printf("%d",b); else if(c!=0) { while(c!=0) { c=a%b; a=b; b=c; } printf("%d",a); }

                  return 0;
                  

                  }

                  • 0
                    @ 2025-3-17 8:59:55
                    #include <stdio.h>
                    
                    int main() {
                        int A, B, temp;
                        scanf("%d %d", &A, &B);
                        while (B != 0) {
                            temp = B;
                            B = A % B;
                            A = temp;
                        }
                        printf("%d\n", A);
                        return 0;
                    }
                    辗转相除法:用较大数除以较小数得到商和余数,再用除数和余数反复做除法运算,当余数为0时,取当前算式除数为最大公约数
                    
                    • 0
                      @ 2024-4-24 22:23:27
                      #include <stdio.h>
                      int gcd(int a,int b)
                      {
                          int c=1,max,min;
                          max=(a>b)?a:b;
                          min=(a>b)?b:a;
                          while (c!=0)
                          {
                              c=max%min;
                              max=min;
                              min=c;
                          }
                          return max;
                      }
                      int main()
                      {
                          int a,b;
                          scanf("%d%d",&a,&b);
                          printf("%d",gcd(a,b));
                      }//
                      
                      • 0
                        @ 2024-1-11 10:49:17
                        #include<stdio.h>
                        int main(){
                        	int A,B,t;
                        	scanf("%d %d",&A,&B);
                        	t=A<B?A:B;
                        	for(int i=t;i;i--){
                        		if(A%i==0&&B%i==0)
                        	{
                        		printf("%d",i);
                        		break; }
                        	} 
                        	
                        	return 0;
                        }
                        
                        
                        
                        
                        • 0
                          @ 2023-8-22 14:31:10

                          #include<stdio.h> int main() { int a,b,t; scanf("%d %d",&a,&b); while(b!=0) { t=a%b; a=b; b=t;

                          } 
                           
                               printf("%d",a);
                          
                          
                          
                           
                          return 0;
                          

                          }

                          • 0
                            @ 2023-8-22 8:02:24
                            #include<stdio.h>
                            int main(){
                                int A,B,C;
                                scanf("%d %d",&A,&B);
                                for(C=A;A%C!=0||B%C!=0;C--){
                                    ;
                                }printf("%d",C);
                                return 0;
                            }
                            
                            • 0
                              @ 2023-8-20 18:40:01

                              #include<stdio.h> int main() { int a,b,temp,i; scanf("%d %d",&a,&b); if(a<b){ temp=a; a=b; b=temp; } for(i=b;i>0;i--) if(a%i0&&b%i0) { printf("%d",i); break; } return 0;

                              }

                              • 0
                                @ 2023-8-13 21:26:50

                                #include<stdio.h> int main() { int max,min, a,b,j; scanf("%d%d",&a,&b); max=a;min=b; if(a<b) { max=b;min=a; } for(int i=min;i>0;i--) { if(max%i0){ if(min%i0){ j=i;printf("%d",j);break; } } } return 0; }

                                • 0
                                  @ 2022-10-7 17:01:11

                                  #include<stdio.h> int main(){ int max,min, a,b,j; scanf("%d%d",&a,&b); max=a;min=b; if(a<b){ max=b;min=a; }

                                  for(int i=min;i>0;i--)
                                  {
                                  	if(max%i==0){
                                  		if(min%i==0){
                                  			j=i;printf("%d",j);break;
                                  		}
                                  	}
                                  }
                                  return 0;
                                  

                                  }

                                  • -2
                                    @ 2022-10-4 14:43:00

                                    辗转

                                    • 1

                                    信息

                                    ID
                                    41
                                    时间
                                    1000ms
                                    内存
                                    128MiB
                                    难度
                                    5
                                    标签
                                    递交数
                                    3435
                                    已通过
                                    1348
                                    上传者