题目链接:http://lx.lanqiao.org/problem.page?

gpid=T113

  历届试题 回文数字  
时间限制:1.0s   内存限制:256.0MB
    
问题描写叙述
  观察数字:12321,123321 都有一个共同的特征,不管从左到右读还是从右向左读,都是同样的。这种数字叫做:回文数字。



  本题要求你找到一些5位或6位的十进制数字。满足例如以下要求:

  该数字的各个数位之和等于输入的整数。
输入格式
  一个正整数 n (10<n<100), 表示要求满足的数位和。
输出格式
  若干行,每行包括一个满足要求的5位或6位整数。

  数字按从小到大的顺序排列。

  假设没有满足条件的,输出:-1
例子输入
44
例子输出
99899

499994

589985

598895

679976

688886

697796

769967

778877

787787

796697

859958

868868

877778

886688

895598

949949

958859

967769

976679

985589

994499
例子输入
60
例子输出
-1
 
题解:自己定义一个类。用来保存回文数以及各个位数之和。

然后按从小到大的顺序直接构造。最后直接查找就可以

AC代码:
#include<iostream>
#include<string>
#define N 1000000
using namespace std;
int pos=0,n;
class Node{
public:
int sum;
string num;
void Calc(int k,int flag){
string str="",tmp="";
while(k) {
str+='0'+k%10; k/=10;
}
tmp+=str[2]; tmp+=str[1];
if(flag){
str=tmp+str;
}
else str=tmp+str[0]+str;
num=str;
}
void CalcBit(){
string s=num;
int total=0,len=s.size();
for(int i=0;i<len;i++) total+=s[i]-'0';
sum=total;
}
}x[N];
void init(){
for(int i=100;i<1000;i++){
x[pos].Calc(i,1);
x[pos++].CalcBit();
}
for(int i=100;i<1000;i++){
x[pos].Calc(i,0);
x[pos++].CalcBit();
}
}
int main()
{
init();
cin.sync_with_stdio(false);
cin>>n;
int flag=1;
for(int i=0;i<pos;i++)
if(x[i].sum==n)cout<<x[i].num<<endl,flag=0;
if(flag)cout<<-1<<endl;
return 0;
}


<span style="color: rgb(51, 51, 51); font-family: 宋体, 'Times New Roman';font-size:18px; line-height: 18.5714302062988px;">出处:</span><a target=_blank href="http://blog.csdn.net/mummyding" style="font-family: 宋体, 'Times New Roman';font-size:18px; line-height: 18.5714302062988px;">http://blog.csdn.net/mummyding</a><span style="color: rgb(51, 51, 51); font-family: 宋体, 'Times New Roman';font-size:18px; line-height: 18.5714302062988px;"> </span>
作者:MummyDing


f




【蓝桥杯】PREV-21 回文数字的更多相关文章

  1. Java实现蓝桥杯历届试题回文数字

    历届试题 回文数字 时间限制:1.0s 内存限制:256.0MB 提交此题 问题描述 观察数字:12321,123321 都有一个共同的特征,无论从左到右读还是从右向左读,都是相同的.这样的数字叫做: ...

  2. BASIC-9_蓝桥杯_特殊回文数

    示例代码: #include <stdio.h> int main(void){ int n = 0 ; scanf("%d",&n); int i = 0 ; ...

  3. [蓝桥杯]PREV-21.历届试题_回文数字

    问题描述 观察数字:, 都有一个共同的特征,无论从左到右读还是从右向左读,都是相同的.这样的数字叫做:回文数字. 本题要求你找到一些5位或6位的十进制数字.满足如下要求: 该数字的各个数位之和等于输入 ...

  4. [LeetCode] Palindrome Number 验证回文数字

    Determine whether an integer is a palindrome. Do this without extra space. click to show spoilers. S ...

  5. javascript 实现一个回文数字

    写一个方法,让"1234"变成回文数字“1234321”,就是顺着读和倒着读都是一样的:注:不让用reverse()方法: function palindrome(str){ va ...

  6. UVALive 2889(回文数字)

    题意:给定i,输出第i个回文数字. 分析:1,2,3,4,……,9------------------------------------------------------------------- ...

  7. Java 简单算法--打印回文数字

    package cn.magicdu.algorithm; public class CircleNumber { public static void main(String[] args) { f ...

  8. LeetCode 9 Palindrome Number(回文数字判断)

    Long Time No See !   题目链接https://leetcode.com/problems/palindrome-number/?tab=Description   首先确定该数字的 ...

  9. 算法笔记_181:历届试题 回文数字(Java)

    目录 1 问题描述 2 解决方案   1 问题描述 问题描述 观察数字:12321,123321 都有一个共同的特征,无论从左到右读还是从右向左读,都是相同的.这样的数字叫做:回文数字. 本题要求你找 ...

随机推荐

  1. oracle数据分组

    一,什么是分组函数 分组函数作用于一组数据,并对一组数据返回一个值 二,分组函数类型 Avg ,count,max,min,stddev(标准方差),sum. 函数名称 函数描述 Count 返回找到 ...

  2. uni-app - 上传图片组件

    2018-12-29 更新1.0  2019-01-08 更新1.1 2019-01-29 更新1.3   重大更新 插件地址: http://ext.dcloud.net.cn/plugin?id= ...

  3. LevelDB初体验测试

    最近工作需要找一个能使用磁盘存储数据,对写要求比较苛刻,需要每秒达100000TPS,读的时候需要能10000TPS左右,不能占用太多内存.单节点满足这个要求的常见有Redis.Memcached等, ...

  4. angularjs component

    Component https://docs.angularjs.org/guide/component component本质上就是directive. This is a shorthand fo ...

  5. WireShark开启IP, TCP,UDP校验和的办法

    首先点击编辑->首选项

  6. java笔记整理

    Java 笔记整理 包含内容     Unix Java 基础, 数据库(Oracle jdbc Hibernate pl/sql), web, JSP, Struts, Ajax Spring, E ...

  7. Java线程池的使用以及原理

    转载请注明原文地址:http://www.cnblogs.com/ygj0930/p/6543909.html  一:线程池简介 在使用多线程来提高处理器利用率的同时,由于线程的不断创建和销毁所造成的 ...

  8. C# lambda方式取出前十个经常联系的手机号码

    这个场景适合所有要查找相同字符串的个数并返回一个序列 //取出前十个经常联系的手机号(即:计算重复手机个数最多的前十个) ).Select(i=>).ToList();

  9. mysql在字符串中查找模式

    查看以电话号码138开头的电话 select  id, phone   from user  where phone  like '138%'

  10. macbook上安装homestead

    参考资料: 1:https://solarhell.com/post/2016/04/homestead 2:https://phphub.org/topics/491 3:http://larave ...