小文’s blog–特殊回文数 –《蓝桥杯代码笔记4》

特殊回文数

问题描述

  123321是一个非常特殊的数,它从左边读和从右边读是一样的。 输入一个正整数n, 编程求所有这样的五位和六位十进制数,满足各位数字之和等于n 。

输入格式

  输入一行,包含一个正整数n。

输出格式

  按从小到大的顺序输出满足条件的整数,每个整数占一行。

样例输入

52

样例输出

899998 989989 998899

数据规模和约定

  1<=n<=54。


题目分析

题目要求我们输出的就是一个回文数,不过它比较特殊——各位数字之和加起来等于输入的整数


解题思路

  1. 首先写一个回文数判断的函数
  2. 拆分各位数字求和。

代码示例

#include <stdio.h> int huiwenshu(int num, int res) { int temp=num, sum=0, count=0; while(num) { count=count+num%10; sum=sum*10+num%10; num/=10; } if(temp==sum && count == res) return 1; } int main() { int i, j, num, res; scanf("%d", &res); for(i=10000; i<1000000; i++) { if(huiwenshu(i, res)==1) printf("%d\n", i); } return 0; }

123456789101112131415161718192021222324

#include <stdio.h>int huiwenshu(int num, int res){   int temp=num, sum=0, count=0;     while(num)   {       count=count+num%10;        sum=sum*10+num%10;        num/=10;    }   if(temp==sum && count == res)   return 1; }int main(){    int i, j, num, res;     scanf("%d", &res);     for(i=10000; i<1000000; i++)    {        if(huiwenshu(i, res)==1)        printf("%d\n", i);     }    return 0; }

运行截图

重点知识点

回文数判断函数

int huiwenshu(int num, int res) { int temp=num, sum=0; while(num) { sum=sum*10+num%10; num/=10; } if(temp==sum) return 1; }

1234567891011

int huiwenshu(int num, int res){   int temp=num, sum=0;     while(num)   {        sum=sum*10+num%10;        num/=10;    }   if(temp==sum)   return 1; }

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏人工智能LeadAI

pytorch入门教程 | 第二章:Autograd

autograd自动微分 假如我们有一个向量x=(1,1)当成input,经过一系列运算得到了output变量y,如下图所示: ? 如图所示,向量x经过与4和自...

35812
来自专栏北京马哥教育

隐马尔科夫模型 python 实现简单拼音输入法

在网上看到一篇关于隐马尔科夫模型的介绍,觉得简直不能再神奇,又在网上找到大神的一篇关于如何用隐马尔可夫模型实现中文拼音输入的博客(http://sobuhu....

3657
来自专栏用户画像

5.2 图的存储及基本操作

图的存储必须要完整、准确地反映顶点集和边集的信息。根据不同图的结构和算法,可以用不同的存储方式,但不同的存储方式将对程序的效率产生很大的影响,因此,所选的存储结...

653
来自专栏程序生活

TensorFlow入门:MNIST数据的单层逻辑回归代码单层回归代码输出结果

1684
来自专栏CSDN技术头条

程序员都应该知道的10大算法

快速排序是由东尼·霍尔所发展的一种排序算法。在平均状况下,排序 n 个项目要Ο(n log n)次比较。在最坏状况下则需要Ο(n2)次比较,但这种状况并不常见。

661
来自专栏人工智能LeadAI

译文 | 与TensorFlow的第一次接触 第三章:聚类

前一章节中介绍的线性回归是一种监督学习算法,我们使用数据与输出值(标签)来建立模型拟合它们。但是我们并不总是有已经打标签的数据,却仍然想去分析它们。这种情况下,...

3706
来自专栏程序员互动联盟

程序员必须要掌握的十大经典算法

算法一:快速排序算法 快速排序是由东尼·霍尔所发展的一种排序算法。在平均状况下,排序 n 个项目要Ο(n log n)次比较。在最坏状况下则需要Ο(n2)次比较...

35613
来自专栏数据结构与算法

Stirling数

第一类: 定义 第一类Stirling数表示表示将 n 个不同元素构成m个圆排列的数目。又根据正负性分为无符号第一类Stirling数 ? 和带符号第一类...

31510
来自专栏老九学堂

程序员必须知道的十大基础实用算法及讲解!

最近社群很多的小伙伴们对算法进行了激烈的讨论与学习,今天老九君就给大家介绍一些编程语言里的基础算法,提高小伙伴们的算法知识及编程里对算法的运用。 我们一起来看看...

3255
来自专栏CreateAMind

keras doc 10终结篇 激活函数 回调函数 正则项 约束项 预训练模型

激活函数可以通过设置单独的激活层实现,也可以在构造层对象时通过传递activation参数实现。

2083

扫码关注云+社区