代码如下:
#include <stdio.h>
#include <math.h>
int main(void)
{
int a,b,i=0;
double la,lb,lc;
int x,y;
int amin=0,bmin=0,xmin=0,ymin=0;
double min=214500000.0;//min是一个较大的数,是为了让下面的sum<min成立
double sum;
for(a=1;a<10000;a++) //扩大1000倍
for(b=1;b<10000&&(a+b)<10000;b++)
for(x=1;x<3000;x++)
for(y=1;y<4000;y++)
{
la=sqrt(x*x+y*y);
lb=sqrt((x-3000)*(x-30000)+y*y);
lc=sqrt(x*x+(y-40000)*(y-40000));
sum=(a+2000)*la+(3000+b)*lb+(11000-a-b)*lc;//这是某个公式
if(sum<min)
min=sum;
}
printf("%d",min);
}
哇哦,好复杂的样子
~~~~~~在这样的年龄,生活还没有撞疼我们,责任感和悔恨也还都不敢损伤我们,那时我们还敢于看,敢于听,敢于笑,敢于惊讶,也敢于做梦。
我感觉应该是四重for循环后的那个if语句出问题了,但就是找不出原因。