http://ac.jobdu.com/problem.php?cid=1040&pid=39
设N是一个四位数,它的9倍恰好是其反序数(例如:1234的反序数是4321)
求N的值
程序无任何输入数据
输出题目要求的四位数,如果结果有多组,则每组结果之间以回车隔开
// 题目40:反序数.cpp: 主项目文件。
#include "stdafx.h"
#include
bool rev(int n)
{
int tmp=n*9;
int arrA[11],arrB[11];
int cntA=0,cntB=0;
while(n)
{
arrA[cntA++]=n%10;
n/=10;
}
while(tmp)
{
arrB[cntB++]=tmp%10;
tmp/=10;
}
if(cntA!=cntB)
return false;
for(int i=0,j=cntB-1;i=0;i++,j--)
{
if(arrA[i]!=arrB[j])
return false;
}
return true;
}
int main()
{
freopen("F:\\output.txt","w",stdout);
for(int i=1000;i<=1111;i++)
{
if(rev(i))
printf("%d\n",i);
}
return 0;
}