蓝桥杯:基础练习 特殊回文数

来源:互联网 发布:mac怎么关掉死机程序 编辑:程序博客网 时间:2024/05/20 16:01
基础练习 特殊回文数  
时间限制:1.0s   内存限制:512.0MB

问题描述
  123321是一个非常特殊的数,它从左边读和从右边读是一样的。
  输入一个正整数n, 编程求所有这样的五位和六位十进制数,满足各位数字之和等于n 。
输入格式
  输入一行,包含一个正整数n。
输出格式
  按从小到大的顺序输出满足条件的整数,每个整数占一行。
样例输入
52
样例输出
899998
989989
998899
数据规模和约定
  1<=n<=54。


__________________________________________________________________________________________________________

算法分析:

          这里用到了一个格式化数字sprintf(),将数字格式化成字符串,利于比较。


全部代码:

// 基础练习 特殊回文数#include <stdio.h>#include <string.h>int main(){int n = 0,i = 0,j = 0,len = 0,k = 0;char buf[7];scanf("%d",&n);//枚举for (i = 10000; i < 1000000; ++i){sprintf(buf,"%d",i);len = strlen(buf);for (j = 0; j < len/2; ++j){if (buf[j] != buf[len-1-j])//非回文 跳出{break;}}if (j == len/2){len = 0;for (k = 0; buf[k] != '\0'; ++k)len += (buf[k]-'0');if (n == len)//是否相等printf("%d\n",i);}}return 0;}

提交序号姓名试题名称提交时间 
代码长度CPU使用 
内存使用 
评测详情24370zerone特殊回文数12-19 00:32480BC正确100250ms784.0KB评测详情
1 0
原创粉丝点击