题解 | 小红的好数,c语言代码实现,质朴代码

小红的好数

https://www.nowcoder.com/practice/de234d0d61d549c6a436e9509dbeea11

#include <stdio.h>

int main() {

    int a[5];

    long long x;

    int flag = 0;

    int k = 0;

    long long haoshu[100000]={0};//赋初值好习惯

    for (long long x = 99999; x >= 0; x--) {

        long long temp = x;//不要改变x的值,因为x在for循环中,少修改

        flag=0;//注意重置flag

        while (temp) {

            for (int i = 0; i < 5; i++) {

                a[i] = temp % 10;

                temp /= 10;

            }

        }

        for (int i = 0; i < 4; i++) {

            for (int j = i + 1; j <= 4; j++) {

                if (a[i] == a[j]) {

                    flag = 1;

                    break;

                }

            }//用一个大小为5的数组来存储所有位置

            if (flag == 1)//如果存在相同数位,就跳出循环

            {

                break;

            }

        }

        if(flag==0)

        {

            k++;

            haoshu[k]=x;

        }

    }

    int m;

    scanf("%d",&m);//注意此处scanf要在k=m前面,不然k永远赋初值0

    k=m;

    printf("%05lld",haoshu[k]);//用百分号0xlld可以输出需要的前导0

   

    return 0;

}

#哪些企业的面试体验感最差?##腾讯音乐求职进展汇总##牛客创作赏金赛##找工作的破防时刻##实习学不到东西怎么办?#
全部评论

相关推荐

点赞 评论 收藏
分享
03-31 18:02
门头沟学院 Java
白日梦想家_等打包版:不要的哦佛给我
点赞 评论 收藏
分享
评论
1
1
分享

创作者周榜

更多
牛客网
牛客企业服务