这道题挺送水了吧。。。
两种做法。
其实空间都不需要那么大,我来提交界面一看一堆MLE的,于是还是良心的放开了时限。
这么简单,就不做解释了。
下面放出几种代码。
两个数组:
#include<cstdio> using namespace std; int a[10000005],c[10000005]; int main() { //freopen("T1_6.in","r",stdin); //freopen("T1_6.out","w",stdout); int n,b; double cnt1=0.0,cnt2=0.0,cnt3=0.0; scanf("%d",&n); for(int i=1;i<=n;i++) { scanf("%d",&a[i]); cnt1+=a[i]; } for(int i=1;i<=n;i++) { scanf("%d",&b); cnt2+=b; cnt3+=a[i]-b; } double ans=(cnt1*3.0-cnt2*2.0)/cnt3; printf("%lf",ans); return 0; }一个数组
#include<cstdio> using namespace std; int a[10000005]; int main() { //freopen("T1_6.in","r",stdin); //freopen("T1_6.out","w",stdout); int n,b; double cnt1=0.0,cnt2=0.0,cnt3=0.0; scanf("%d",&n); for(int i=1;i<=n;i++) { scanf("%d",&a[i]); cnt1+=a[i]; } for(int i=1;i<=n;i++) { scanf("%d",&b); cnt2+=b; cnt3+=a[i]-b; } double ans=(cnt1*3.0-cnt2*2.0)/cnt3; printf("%lf",ans); return 0; }有技巧的不用数组
#include <cstdio> using namespace std; double n,a,b; int main() { //freopen("T1_6.in","r",stdin); //freopen("T1_6.out","w",stdout); a=0;b=0; scanf("%lf",&n); for(int i=1;i<=n;i++) { double t; scanf("%lf",&t); a+=t; } for(int i=1;i<=n;i++) { double t; scanf("%lf",&t); b+=t; } printf("%.6lf\n",(3*a-2*b)/(a-b)); return 0; } 撒花~转载于:https://www.cnblogs.com/vercont/p/10210032.html
相关资源:JAVA上百实例源码以及开源项目