东华oj进阶2 回文数

本文介绍了一个编程问题,要求找出所有大于等于给定整数n的四位回文数。作者通过将数字转换为字符串并反转检查其是否为回文来实现,展示了基础算法的应用。
摘要由CSDN通过智能技术生成

问题:2 回文数

问题描述:

1221是一个非常特殊的数,它从左边读和从右边读是一样的,编程求大于等于n的所有这样的四位十进制数。

输入说明 :

输入一个整数n,n<9999

输出说明 :

按从小到大的顺序输出满足条件的四位十进制数。

输入范例 :

9888

输出范例 :

9889
9999

思路:

对付回文数的题在基础见过太多次了,我的基本思路是把一个数转为字符串,再使用reverse判断前后字符串是否相等

代码实现:

#include<bits/stdc++.h>
using namespace std;

bool IsHuiwen(int num)
{
    stringstream ss;
    ss<<num;
    string str1(ss.str());
    string str2(str1);
    reverse(str2.begin(),str2.end());
    return str2==str1;
}

int main()
{
    int n;
    cin>>n;
    while(n<1000)
        n++;

    while(n<10000)
    {
        if(IsHuiwen(n))
            cout<<n<<endl;
        n++;
    }
}
  • 9
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值