抓交通肇事犯
一、问题描述
一辆卡车违反交通规则,撞人后逃跑。现场有三人目击该事件,但都没有记住车号,只记下车号的一些特征。甲说:牌照的前两位数字是相同的;乙说:牌照的后两位数字是相同的,但与前两位不同:丙是数学家,他说:四位的车号刚好是-一个整数的平方。请根据以上线索求出车号。
二、问题分析
车号一共有四位,设为abcd,前两位相等:a=b,后两位相等:c=d。但是后两位与前两位不相等,即b!=c。
又有条件:四位的车号刚好是-一个整数的平方。即找到b*1000+b*100+c*10+c==i*i;b和c是从0~9的个位数,i*i的范围是1000~9999,分两层循环即可,若条件成立即找到了。
三、代码实现

#include<iostream> #include<cmath> using namespace std; int main() { int a, b; for (a = 0; a < 10; a++) { for (b = 0; b < 10; b++) { double x = 1100.0 * a + 11.0 * b; int y = sqrt(x);//注意这里要把开根号的结果转化成整数,不然y*y==x是恒成立的 if (x >= 1000 && x <= 9999 &&y*y==x) { printf("%d%d%d%d\n", a, a, b, b); } } } return 0; }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律