1560 - 反序相等
时间限制 : 1 秒
内存限制 : 32 MB
设N是一个四位数,它的9倍恰好是其反序数(例如:1234 的反序数是4321),求N的值。
题目输入
无
题目输出
每行一个数,表示满足题目要求的数。
输入/输出样例
输入格式
输出格式
C语言解答
#include<stdio.h> #include<stdlib.h> int main() { int a,b,c,d; int m,n; for(a=1;a<=9;a++) for(b=0;b<=9;b++) for(c=0;c<=9;c++) for(d=0;d<=9;d++) { m=1000*a+100*b+10*c+d; n=1000*d+100*c+10*b+a; if(9*m==n) printf("%d%d%d%d\n",a,b,c,d); } //system("pause"); return 0; }
C++解答
#include<iostream> using namespace std; int main() { for(int i=1000; i<=9999; i++) { int a,b,c,d; a=i/1000; b=i/100-a*10; c=(i/10)%10; d=i%10; if(9*i==d*1000+c*100+b*10+a) cout<<i<<endl; } return 0; }
Java解答
public class Main { public static void main(String[] args) { for (int i = 1000; i <= 1111; i++) { if(i*9==f(i)){ System.out.println(i) ; } } } public static int f(int n){ int k = 0 ; int i = 3 ; int t = 0 ; while(n>0){ t = n%10 ; for (int j = 0; j <i; j++) { t = t*10 ; } i-- ; k = k+t ; n = n/10 ; } return k; } }