题目大意

有一个瓶子,是由一条曲线绕着xx轴旋转得到的。瓶底的直线为x=Xlowx=Xlow瓶口的直线为x=Xhighx=Xhigh,给定曲线的函数,Xlow,Xhigh,inc曲线的函数,Xlow,Xhigh,inc,求瓶子的体积并每隔incinc体积画一条等体积线。

解答

V=∫XhighXlowf(x)2×dx≈Xhigh−Xlow6[f(Xlow)2+4f(Xlow+Xhigh2)2+f(Xhigh)2]

V=\int_{Xlow}^{Xhigh}f(x)^2\times dx \approx {Xhigh-Xlow \over 6} [f(Xlow)^2+4f({Xlow+Xhigh \over 2})^2+f(Xhigh)^2]
由此可以用辛普森自适应公式算出所有需要的体积。
接着进行二分答案,查找每个等体积线的 x<script id="MathJax-Element-29" type="math/tex">x</script>坐标。依次解出即可。

参考代码

#include <cstdio>
#include <cstdlib>
#include <cmath>
#include <algorithm>using namespace std;const double eps = 0.0001;int n;
double a[15];
double xl, xh;
double inc;double f(double x)
{double ans = 0;double xx = 1;for (int i = 0; i <= n; i++) {ans += a[i]*xx;xx *= x;}return ans*ans;
}double simpon(double a, double b)
{return (b-a)/6.0*(f(a)+4*f((a+b)/2)+f(b));
}double work(double a, double b)
{double cmp = simpon(a, (a+b)/2)+simpon((a+b)/2, b);double cmp1 = simpon(a, b);if (fabs(cmp-cmp1) < eps)return cmp;return work(a, (a+b)/2) + work((a+b)/2, b);
}void readin()
{scanf("%d", &n);for (int i = 0; i <= n; i++)scanf("%lf", &a[i]);scanf("%lf %lf %lf", &xl, &xh, &inc);
}void find(double now)
{double l = xl, h = xh;double m;double tmp;while (true) {m = (l+h)/2;tmp = work(xl, m)*3.1415926 - now;if (fabs(tmp) < eps) {printf("%.2lf ", m-xl);return;}if (tmp < 0)l = m;elseh = m;}
}int main()
{readin();double v = work(xl, xh)*3.1415926;printf("%.2lf\n", v);if (v < inc) {printf("insufficient volume");}for (double now = inc, i = 0; now <= v && i < 8; now += inc, i++) {find(now);}return 0;
} 

ACM/ICPC World Finals 2012 B Curvy Little Bottles相关推荐

  1. ACM - ICPC World Finals 2013 A Self-Assembly

    原题下载 : http://icpc.baylor.edu/download/worldfinals/problems/icpc2013.pdf 这道题其实是2013年我AC的第一道题,非常的开心,这 ...

  2. 《算法竞赛入门经典》 例题 4-4 信息编码 (Message Decoding,ACM,ICPC World Finals 1991,UVa 213)

    原题及翻译 Some message encoding schemes require that an encoded message be sent in two parts. 某些消息编码方案要求 ...

  3. 《算法竞赛入门经典》习题4-2 正方形 (Squares,ACM,ICPC World Finals 1990,UVa201)——仅提供大体方法

    原题及翻译 A children's board game consists of a square array of dots that contains lines connecting some ...

  4. 数数正方形(ACM/ICPC World Finals)

    题目:有n行n列(2<=n<=9)的小黑点,还有m条线段连接其中的一些黑点,统计这些线段连成了多少个正方形(每种边长分别统计) 行从上到下编号为1~n,列从上到下编号为1~n.边用 H(i ...

  5. 谜题 (Puzzle,ACM/ICPC World Finals 1993,UVa227)

    题目描述:算法竞赛入门经典习题3-5 题目思路:模拟题 #include <stdio.h> #include <string.h> #define maxn 55 char ...

  6. 习题3-6 纵横字谜的答案(Crossword Answers, ACM/ICPC World Finals 1994, UVa232)

    原题vjudge 输入一个r行c列(1≤r,c≤10)的网格,黑格用"*"表示,每个白格都填有一个字母. 如 果一个白格的左边相邻位置或者上边相邻位置没有白格(可能是黑格,也可能出 ...

  7. 例题5-10 PGA巡回赛的奖金(PGA Tour Prize Money,ACM/ICPC World Finals 1990 UVa207)

    原题链接:https://vjudge.net/problem/UVA-207 分类:耐力 备注:排序和其他细节处理 前言:这是我第二次默写刘老师的代码了,真的崩溃,错一点点细节都不行,对着uDebu ...

  8. UVa816 例题 6-14 Abbott的复仇 (Abbott's Revenge,ACM/ICPC World Finals 2000)

    原题链接: UVa-816 题目大意: 模有一个最多包含9*9个交叉点的迷宫.输入起点.离开起点时的朝向和终点,求一条最短路径.(具体题目参考原题和紫书) 解题思路: 本题是一道用BFS求最短路径的迷 ...

  9. 习题7-1 消防车(Firetruck,ACM/ICPC World Finals 1991, UVa208)

    原题链接:https://vjudge.net/problem/UVA-208 备注:回溯法 分类:DFS 代码如下: #include<cstdio> #include<cstri ...

  10. 习题7-3 多米诺效应(The Domino Effect, ACM/ICPC World Finals 1991, UVa211)

    谜一般的格式换行,为啥格式错报WA额. 这题也是用回溯法解决,只是判断情况稍微复杂些. 本质都是相同的,每次有两种决策,一行一行来处理. 当进行到某一行时,上一行还存在未vis的位置则回溯. #inc ...

最新文章

  1. 小米6鲁大师html5评测,一加6T依然是顶级旗舰!鲁大师2018手机性能榜跑分排前三!...
  2. Maven简单的配置Junit测试及使用简单的mock
  3. auto-sklearn手册
  4. jQuery-helloWorld
  5. 99 网络编程_网络工程师技能图谱,看看你会多少技能
  6. 华为Mate 30系列发布会定档:年度机皇 天生优秀!
  7. 【已解决】手机“此设备已安装证书授权中心,您的安全网络流量可能被监控”怎么办?
  8. 安卓仿苹果键盘输入法_仿ios输入法
  9. PCS7 DCS 水泥粉磨程序
  10. c#编程实战宝典 付强_C#编程实战宝典(光盘内容另行下载,地址见书封底)
  11. 每周分享第 58 期
  12. mysql左连接和右连接_MYSQL 左连接与右连接
  13. 因为毕业半年挣了100万,帅地在CSDN被喷上热榜
  14. 迅捷OCR文字识别软件的功能介绍
  15. 【Proteus仿真】AT24C02数据读写+LCD1602显示
  16. c语言求两个数的最小公倍数辗转相除法,C语言辗转相除法求2个数的最小公约数...
  17. 图像的灰度化灰度值的读取Matlab
  18. 在线教育网站的一些瞎折腾……
  19. World Streamer学习2
  20. paddle百度飞浆入门使用教程

热门文章

  1. 稀疏编码的经典解法——ISTA算法的推导
  2. 超频导致声卡不能正常使用
  3. 南京信息工程大学eduroam使用方法
  4. 图片php木马制作教程,图片木马制作大法
  5. ActivityManager 管理Activity
  6. swf文件转mp4视频格式的失败与成功
  7. EXCEL【数据处理之数据抽取——随机抽样】
  8. B2C项目系统软件测试计划
  9. 龙威ol服务器维护,《龙威OL》搅屎棍职业技能攻略详解
  10. 雨木林风 的 Ylmf OS