#34975: 請教一下


zichun808@gmail.com (淳)

學校 : 不指定學校
編號 : 221724
來源 : [120.113.180.55]
最後登入時間 :
2025-09-18 09:25:50

請問為何後面的測資都無法通過

#include <iostream>

using namespace std;

int main()
{
    int x;
    scanf("%d",&x);
    
    int digit=0; 
    int X=x;
    while(X!=0){
        digit++;
        X/=10;
    }
    
    int a[2] = {0};  
    while(digit!=0){
        if(digit%2==0){
           a[1]+=x%10;
           digit--;
           x/=10;
        }
        else if(digit%2==1){
            a[0]+=x%10;
            digit--;
            x/=10;
        }
    }
    
    int y=a[0]-a[1];
    if(y<0)
     y*=-1;
    printf("%d\n",y);
    
    return 0;
}

#35038: Re: 請教一下


cges30901 (cges30901)

學校 : 不指定學校
編號 : 30877
來源 : [39.12.66.21]
最後登入時間 :
2025-04-20 17:19:22

請問為何後面的測資都無法通過

#include

using namespace std;

int main()
{
    int x;
    scanf("%d",&x);
    
    int digit=0; 
    int X=x;
    while(X!=0){
        digit++;
        X/=10;
    }
    
    int a[2] = {0};  
    while(digit!=0){
        if(digit%2==0){
           a[1]+=x%10;
           digit--;
           x/=10;
        }
        else if(digit%2==1){
            a[0]+=x%10;
            digit--;
            x/=10;
        }
    }
    
    int y=a[0]-a[1];
    if(y<0)
     y*=-1;
    printf("%d\n",y);
    
    return 0;
}


數字很大,不能用int

#35067: Re: 請教一下


zichun808@gmail.com (淳)

學校 : 不指定學校
編號 : 221724
來源 : [120.113.180.55]
最後登入時間 :
2025-09-18 09:25:50

謝謝!!