解题思路:
新手见解,欢迎指正!
首先根据题目的意思,我们可以理解为以下几个式子
(n表示求解数,x,y表示商)
n/8=x1 ...1
x1/8=x2 ...1
x2/8=a ...1
n/17=y ...4
y/17=2a ...15
之后我们把这几个式子整合一下,用带入消元法可以得到以下两个关于a的式子
(((n-1)/8)-1)/8-7)/8=a
((n-4)/17)-15)/17=2a
再把这两个式子合并就得到了判断n的条件
(((n-1)/8)-1)/8-7)/8*2==((n-4)/17)-15)/17
再通过题目条件我们可以得知这个n的值为4+k*17,我们可以以此条件来减少循环次数
注意事项:
注意计算时的类型转换,最好在运算中使用浮点型数据,不然容易出错
参考代码:
#include<stdio.h> int main() { double N=4; while(1) { N+=17; if( ((((N-1.0)/8.0)-1.0)/8.0-7.0)/8.0*2==((N-4.0)/17.0-15.0)/17.0 ) { printf("%.0llf\n",N); break; } } return 0; }
0.0分
7 人评分