高数
时间限制:
1000 ms | 内存限制:
65535 KB
难度:
0
-
描述
-
那一天,XxX_stu一个人在宿舍快乐地写代码,突然发现QQ闪了一下,“咦,师妹找我。”
“师兄你会高数吗”
XxX_stu一看到这句话顿时就不乐意了。开玩笑?在逗我?我一个搞ACM的搞不定一道小小的高数?
“题目是什么,发过来”,噼里啪啦一行字打过去。
接下来就是师妹发过来的题目:
已知:
求。
大概花了0.01秒的沉思,XxX_stu想出了解决方法。又过了两分钟,XxX_stu得到了答案。没错,XxX_stu这是这么叼。
现在轮到你来解决这个问题了,但是你的问题要难那么一点点
你要求的是。
-
输入
-
输入文件的第一行有一个整数T,表示总共有T组测试数据。
接下来有T行,每行两个有理数a,b。0<=a<=b<=10。
输出
- 对于每组测试,输出一个答案。浮点数太恶心啦,所以你要输出四舍五入到整数位的结果。 样例输入
-
2 0 2 0 10
样例输出
-
2 420
//代码:
#include <stdio.h> #include<math.h> double f(double n){ double t1,t2,t3; if(-1e-7<=n&&n<=2+1e-7)return t1= 4.0/3*pow(n,1.5)-0.4*pow(n,2.5); if(-1e-7+2<n&&n<=5+1e-7)return t2= f(2)+0.25*pow(n,4)-2.0/3*pow(n,3)-0.5*pow(n,2)+2*n-6+16.0/3; return t3=f(5)+72*n-8.0/15*pow(n-5,15.0/8)-72*5; } int main() { int T; scanf("%d",&T); while(T--){ double a,b; scanf("%lf%lf",&a,&b); printf("%d\n",(int)(f(b)-f(a)+0.5)); //printf("%.lf\n",f(b)-f(a)); //之前这样输出时提交一直wrong!!!!!!!!!!! } return 0; }
-
输入文件的第一行有一个整数T,表示总共有T组测试数据。