第十四届蓝桥杯个人题解

a 幸运的数

主要是思路  遍历1-100000000 每一层循环,首先将其每一位分到数组里,并记录位数,如果是偶数位再接着往下,

比较前半和后半是否相等:通过加减 最后结果是否为零来判断

int main()

{

    int num=0;

    for(int i=1;i<100000000;i++)

    {

        int s[9]={0};

        int count=0,m=0,k=i;

        for(;k;k/=10)s[count++]=k%10;

        if(count%2==0)

        {

            for(int i=0;i<count/2;i++) m+=s[i];

            for(int i=count/2;i<count;i++) m-=s[i];

            if(!m) num++;

        }

    }

    cout<<num;

}

 

 

posted @ 2024-02-28 18:55  Fredddy  阅读(16)  评论(0编辑  收藏  举报