1888 - 【C语言训练】求车速

一辆以固定速度行驶的汽车,司机在上午10点看到里程表上的读数是一个对称数(即这个数从左向右读和从右向左读是完全一样的),为95859。两小时后里程表上出现了一个新的对称数。问该车的速度是多少?新的对称数是多少?

题目输入

题目输出

输入/输出样例

题目输入

no input needed

题目输出

95959

提示

根据题意,设所求对称数为i,其初值为95589,对其依次递增取值,将i值的每一位分解后与其对称位置上的数进行比较,若每个对称位置上的数皆相等,则可判定i即为所求的对称数。

C语言解答

#include<stdio.h>

int main()
{
	printf("95959");
		
	return 0;
}

C++解答

#include<iostream>
using namespace std;
bool ishw(int n)
{
	int a[10]={0};
	while (n)
	{
		a[++a[0]]=n%10;
		n/=10;
	}
	for (int i=1,j=a[0]; i<j; i++,j--)
		if (a[i]!=a[j]) return false;
	return true;
}
int main()
{
	int n=95859;
	while (++n)
		if (ishw(n)) break;
	cout<<n<<endl;
	return 0;
} 

提示

根据题意,设所求对称数为i,其初值为95589,对其依次递增取值,将i值的每一位分解后与其对称位置上的数进行比较,若每个对称位置上的数皆相等,则可判定i即为所求的对称数。

时间限制 1 秒
内存限制 128 MB
讨论 统计
上一题 下一题