题解 | #[NOIP2008]ISBN号码#

[NOIP2008]ISBN号码

http://www.nowcoder.com/practice/95712f695f27434b9703394c98b78ee5

int main()
{
    char chs[13] = "";
    int i = 0;
    scanf("%s", chs);
    int remainder = 0;
    int ret = 0; //求和
    int j = 0; //之前用的i,但是会因为continue跳过1和5
    for(i = 0, j = 1; i < 11; i++)
    {
        if(i == 1 || i == 5)
        {
            continue;
        }
        else
        {
            ret += ((chs[i] - '0') * (j++));
        }
    }
    remainder = ret % 11; //remainder,余数
    if(remainder == 10)
    {
        if(chs[12] == 'X')
        {
            printf("Right");
        }
        else
        {
            chs[12] = 'X';
            printf("%s",chs);
        }
    }
    else
    {
        if(remainder == chs[12] - '0')
        {
            printf("Right");
        }
        else
        {
            chs[12] = remainder + '0';
            printf("%s",chs);
        }
    }
    return 0;
}
全部评论

相关推荐

07-11 11:10
门头沟学院 Java
请问各位大三兄弟们跟hr说多久实习时间到时候可以提前跑路吗?
程序员小白条:问就是六个月以上,可以一年,实习都这样,你入职后想跑就跑
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
07-11 11:16
点赞 评论 收藏
分享
06-23 11:43
门头沟学院 Java
allin校招的烤冷...:我靠,今天中午我也是这个hr隔一个星期发消息给我。问的问题还是一模一样的😅
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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