1.4算法入门之车牌号

一 . 问题描述

一辆卡车违反交通规则后肇事逃逸,现场有三人目击该事件,但都没有记住车牌号,但是都提供了线索,甲说前两位相同的,乙说后两位相同,但与前两位不同,丙是位数学家,说四位的车号刚好是一个整数的平方,请根据以上线索求出四位车牌号

二. 问题分析

四位数a1,a2,a3,a4满足以下条件

1> 0=

2> a1=a2

3> a3=a4

4> a1不等于a3

5>1000*a1+100*a2+10*a3+a4=x*x x属于实数

三. 算法设计

数值计算问题,求解不定方程,对于求解不定方程组一般用穷举循环,该题目运用的是双层穷举

外层双循环穷举出车牌号

里层穷举出平方值为四位数的是否与车牌号相等


#include


int main(int argc,const char * argv[]) {

// insert code here...

int i,j,k,temp,flag=0;//i代表前两位,j代表后两位k代表车牌号,temp代表某个数

//flag代表找到了,找到了就退出循环;可以提高效率;

//i!=j为已知条件

for (i=1; i<=9; i++)

{

if (flag) {

break;

}

for ( j=0; j<=9; j++)

{

if (flag) {

break;

}

//if (i!=j)

{

k=1000*i+100*i+10*j+j;

for (temp=31; temp<=99; temp++)

{

if (temp*temp==k) {

printf("k=%d\n",k);

flag=1;

break;

}

}


}

}

}


return 0;

}



本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部