palindom de 5 cifre are forma ijkji, unde i,j,k sunt cifre. evident i porneste de la 1 la 9, iar j si k de la 0 la 9. Fiind dat n, ca suma cifrelor numarului avem:
i+j+k+j+i=n, de unde k=n-2*(i+j). Deci putem folosi două cicluri pt i şi j, iar k se calculează. Evident tr să verificăm valoarea calculată a lui k, deoarece e cifră, adică k tr. să fie din segmentul [0;9]
#include <iostream>
using namespace std;
int n, i,j,k, num;
int main()
{
cin >> n;
for (i=1; i<10; ++i)
{
for (j=0; j<10; ++j)
{
k=n-2*(i+j);
if (k>=0 && k<10)
{
num=i*10000+j*1000+k*100+j*10+i;
cout << num << " ";
}
}
}
}