小学奥数————蓄水池水管问题
这道题有点怪,小学奥数除了暴力还能有其他算法?
我第一眼看到它就认为是暴力水题,直接暴力。但不对啊,有bug,我无论写的程序还是手算都没算出样例。后来发现不对,题看错了,进水出水看反了。。。于是轻松改掉代码,开开心心提交代码,等待AC——
但是出来一个9分,为啥呢?想来想去仍不得要领,后来一想,或许是因为精度不够?便把所有的数都乘10000,然后再一提交,果然AC了!!
代码如下:
#include<cstdio>#include<iostream>using namespace std;int main(){ double a,b,c,d; double a1,b1,c1,d1,i,tot=0; cin>>a>>c>>b>>d; a1=(1/a)*10000; b1=(1/b)*10000; c1=(1/c)*10000; d1=(1/d)*10000; for(i=0;;) { tot+=a1; i++; if(tot>=10000) { tot-=10000; i-=tot/a1; break; } i++; tot-=c1; i++; tot+=b1; if(tot>=10000) { tot-=10000; i-=tot/b1; break; } i++; tot-=d1; } printf("%.2lf",i); return 0;
}
转载于:https://www.cnblogs.com/DukeLv/p/7853806.html
相关资源:各显卡算力对照表!