题解 | #自守数#

字符统计

http://www.nowcoder.com/practice/c1f9561de1e240099bdb904765da9ad0



#include <stdio.h>
#include <string.h>
#include <math.h>

//自守数  判断是几位  平方后对10的位数次方取余
//87909376  9376 87900000%10000
//pow(),需要加载math.h

int isself(int n);
int main()
{
    int n;
    while (scanf("%d", &n) != EOF)
    {
        int count = 0;
        for (int i = 0; i <= n; i++)
            if (isself(i) == 1)
                count++;

        printf("%d\n", count);
    }

    return 0;
}

int isself(int n)
{
    int ret = 0;
    int digit = 0;
    int cmpn = n * n - n;
    while (n != 0)
    {
        digit++;
        n /= 10;
    }
    int rank = pow(10, digit);

    if (cmpn % rank == 0)
    {
        ret = 1;
    }
    return ret;
}
全部评论

相关推荐

门口唉提是地铁杀:之前b站被一个游戏demo深深的吸引了。看up主页发现是个初创公司,而且还在招人,也是一天60。二面的时候要我做一个登录验证和传输文件两个微服务,做完要我推到github仓库,还要我加上jaeger和一堆运维工具做性能测试并且面试的时候投屏演示。我傻乎乎的做完以后人家跟我说一句现在暂时不招人,1分钱没拿到全是白干
你的秋招第一场笔试是哪家
点赞 评论 收藏
分享
06-10 23:36
已编辑
首都经济贸易大学 C++
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务