【蓝桥杯】BASIC-9 特殊回文数

正文索引 [隐藏]

题目描述:

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

输入描述:

输入一行,包含一个正整数n(1<=n<=54)。

输出描述:

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

输入样例:

52

输出样例:

899998
989989
998899

解题思路:

蓝桥暴力杯 这题暴力破解就完事了,Up就完事了。

AC代码:

#include <bits/stdc++.h>
using namespace std;
#define Up(i,a,b) for(int i = a; i <= b; i++)
int main()
{
    ios::sync_with_stdio(false);
    cin.tie(0),cout.tie(0);
    int n;
    cin >> n;
    Up(i,1,9)
    {
        Up(j,0,9)
        {
            Up(k,0,9)
            {
                if((i+j+k+j+i) == n)
                {
                    cout << i << j << k << j << i << endl;
                }
            }
        }
    }
    Up(i,1,9)
    {
        Up(j,0,9)
        {
            Up(k,0,9)
            {
                if((i+j+k+k+j+i) == n)
                {
                    cout << i << j << k << k << j << i << endl;
                }
            }
        }
    }
    return 0;
}