一开始写的C语言暴力解法一个TLE,一个WA,不知道WA点在哪
查看原帖
一开始写的C语言暴力解法一个TLE,一个WA,不知道WA点在哪
860912
xiayanTFire楼主2023/2/18 23:54
int main()
{
    long long n , x,i=1 , nums = 0,a,b,c,d,e,f;
    scanf("%lld%lld",&n,&x);

   while(i<=n)
   {
       if(i<10)
       {
          if(i == x)
            nums++;
           i++;
       }
     if(i>=10&&i<100)
       {
           a= i/10;
           if(a == x)
             nums++;
           b = i%10;
           if(b ==  x)
             nums++;
           i++;
       }
    if(i>=100&&i<1000)
       {
           a = i/100;
           if(a == x)
            nums++;
           b = (i/10)%10;
           if(b == x)
            nums++;
           c = i%10;
           if(c == x)
            nums++;
           i++;
       }
        if(1000<=i&&i<10000)
        {
           a = i/1000;
           if(a == x)
            nums++;
           b = (i/100)%10;
           if(b == x)
            nums++;
           d = (i/10)%10;
           if(d == x)
            nums++;
           c = i%10;
           if(c == x)
            nums++;
           i++;
        }
         if(i>=10000&&i<100000)
        {
           a = i/10000;
           if(a == x)
                 nums++;
           b = (i/1000)%10;
           if(b == x)
                 nums++;
           d = (i/100)%10;
           if(d == x)
                nums++;
            e = (i/10)%10;
            if(e == x)
                nums++;
           c = i%10;
           if(c == x)
                nums++;
           i++;
        }
         if(i>=100000&&i<1000000)
        {
            a = i/100000;
           if(a == x)
                 nums++;
           b = (i/10000)%10;
           if(b == x)
                 nums++;
           d = (i/1000)%10;
           if(d == x)
                nums++;
            e = (i/100)%10;
            if(e == x)
                nums++;
            f = (i/10)%10;
            if(f == x)
                nums++;
           c = i%10;
           if(c == x)
                nums++;
           i++;
        }
        if(i == 1000000)
        {
            if(x == 1)
                nums++;
            if(x == 0)
                nums +=6;
        }
   }
   printf("%lld",nums);
    return 0;
}

2023/2/18 23:54
加载中...