zoukankan      html  css  js  c++  java
  • 蓝桥杯 特殊回文串

    问题描述
      123321是一个非常特殊的数,它从左边读和从右边读是一样的。
      输入一个正整数n, 编程求所有这样的五位和六位十进制数,满足各位数字之和等于n 。
    输入格式
      输入一行,包含一个正整数n。
    输出格式
      按从小到大的顺序输出满足条件的整数,每个整数占一行。
    样例输入
    52
    样例输出
    899998
    989989
    998899
    数据规模和约定
    1<=n<=54。
    #include<iostream>
    #include<cstdio>
    #include<cstring>
    #include<algorithm>
    using namespace std;
    int n;
    int a[10];
    void dfs(int step)
    {
        if(step==3)
        {
            int ans;
            ans=(a[0]+a[1])*2+a[2];
            if(ans==n&&a[0])
            {
                printf("%d%d%d%d%d
    ",a[0],a[1],a[2],a[1],a[0]);
            }
            return ;
        }
        for(int i=0;i<=9;i++)
        {
            a[step]=i;
            dfs(step+1);
        }
    }
    
    void dfs1(int step)
    {
        if(step==3)
        {
            int ans=0;
            for(int i=0;i<3;i++)
                ans+=a[i]*2;
            if(ans==n&&a[0])                   //  它是一个 十进制的数!  所以第一位不能为0   这里wa了两次
            {
                for(int i=0;i<3;i++)
                    printf("%d",a[i]);
                for(int i=2;i>=0;i--)
                    printf("%d",a[i]);
                printf("
    ");
            }
            return ;
        }
        for(int i=0;i<=9;i++)
        {
            a[step]=i;
            dfs1(step+1);
        }
    }
    int main()
    {
        while(~scanf("%d",&n))
        {
            if(n<=45)
                dfs(0);
    
            dfs1(0);
        }
        return 0;
    }
  • 相关阅读:
    Linux文件系统
    Ant整合svnant(三)
    Linux文件系统基本结构和基本操作管理
    Ant生成javadoc(四)
    Linux系统常用命令
    Linux系统目录架构
    使用fdisk进行磁盘管理
    命令行BASH的基本操作
    python 获取项目的根路径
    游戏自动化测试思路
  • 原文地址:https://www.cnblogs.com/assult/p/3613503.html
Copyright © 2011-2022 走看看