Codeforces 题解 CF863A 【Quasi-palindrome】

此题本质上是:求一个数去掉后缀零后是否是回文串

因此,代码分为:

>>> 读入
>>> 删除后缀0
>>> 判断回文
    >>> 转为数组存储
    >>> 依次比较开头和结尾是否相同(头指针后移,尾指针前移)
>>> 输出结果

所以,我们有了:

#include <?????.?>      //杜绝抄袭!

??? main()              //杜绝抄袭!
{
    int n;
    
    //读入
    scanf("%d", &n);    
    
    //删除后缀0
    while (n % 10 == 0) n /= 10;        
    
    int a[10], len = 0;     //a存储数组形式的n
    bool huiwen = true;     //删除后缀0的n是否是回文
    
    //转为数组存储
    while (n != 0) a[m++] = n % 10, n /= 10;
    
    
    //依次比较开头和结尾是否相同(头指针后移,尾指针前移)
    for (int i = 0, j = m - 1; i <= j; i++, j--)
        if (a[i] != a[j]) huiwen = false;       
        
    //输出
    if (huiwen)
        printf("YES");
    else
        printf("NO");
    return 0;
} 
avoiding plagiarism!                        //杜绝抄袭!
全部评论

相关推荐

09-08 17:17
同济大学 Java
狗不理fe:里面的人劝一句,别来虾,我们部门24校招生淘汰率30%,还有一些人说有一年保护期,不可能!!!
我的秋招日记
点赞 评论 收藏
分享
09-09 06:44
已编辑
浙江大学 深度学习
无敌王八拳:貌似10月线下面?
投递华为技术有限公司等公司10个岗位
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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