TOJ4439微积分――曲线积分(数学,模拟)
传送门:点我
格林公式
P,Q为关于x,y的函数。
现在为了方便起见,现给出x的积分上限1,积分下限0, y的积分上限x,积分下限0。
P只是关于Y的函数,Q只是关于X的函数。
输入
开始输入为测试组数n。每一组的开始输入Q的项数q和Q关于X的系数以及指数。接下来是P的多项式的项数p和P的关于Y的系数以及指数。
p<= 100, q <= 100。注意:指数是正整数,系数不为 0。
输出
每一组输出为一行,保留两位小数。
样例输入
2
1
2 2
1
3 3
2
1 1
2 2
2
1 1
2 2
样例输出
0.58
0.67
思路:
本质是套公式计算算偏导数
例如样例中第一个数据Q=2x^2,P=3y^3.
代入公式计算的就是

中间是4x-9y^2的原因:根据格林公式中,对Q求关于x的偏导,对P求对于y的偏导,两式相减得到4x-9y^2。
计算过程:


7/12 写成小数保留2位就是0.58
因此就模拟求导积分的过程就行了,因为上界下届都给定了,我套了个map存指数对应的系数(注意系数要用double)
代码:
#include <cstdio>
#include <cstring>
#include <cmath>
#include <cstdlib>
#include <ctime>
#include <iostream>
#include <algorithm>
#include <sstream>
#include <string>
#include <vector>
#include <queue>
#include <stack>
#include <map>
#include <set>
#include <utility>
#include <bitset>
#define LL long long
#define pb push_back
#define mk make_pair
#define pill pair<int, int>
#define mst(a, b) memset(a, b, sizeof a)
#define REP(i, x, n) for(int i = x; i <= n; ++i)
#define pi acos(-1.0)
#define Max_N 1001
#define inf 0x3f3f3f3f
#define N 1001
#define ll long long
using namespace std;
int main(){
int _;
for(scanf("%d",&_);_--;){
int n;scanf("%d",&n);
map<int,double>mp;
while(n--){
int x;double a;
scanf("%lf%d",&a,&x);
a*=x;
x-=;//求导
mp[x+] += a;//积分之后乘以x
}
int m;
scanf("%d",&m);
while(m--){
int x;double a;
scanf("%lf%d",&a,&x);
mp[x] -= a;
}
double ans = ;
map<int,double>::iterator it = mp.begin();
for(;it != mp.end() ;it++){
double xi = it->second;
int zhi = it->first;
ans += xi/(1.0*(zhi+));
}
printf("%.2lf\n",ans);
}
}
/*
2
2
1 1
2 2
2
1 1
2 2
*/
TOJ4439微积分――曲线积分(数学,模拟)的更多相关文章
- [再寄小读者之数学篇](2014-04-01 from 2103471050@qq.com 曲线积分)
求 $\int_\vGa y^2\rd s$, 其中 $\vGa$ 由 $\dps{\sedd{\ba{rl} x^2+y^2+z^2&=a^2\\ x+z&=a \ea}}$ 决定. ...
- 2017 Multi-University Training Contest - Team 9 1004&&HDU 6164 Dying Light【数学+模拟】
Dying Light Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 131072/131072 K (Java/Others)Tot ...
- zzulioj--1825-- 会长爱数学(模拟)
1825: 会长爱数学 Time Limit: 1 Sec Memory Limit: 128 MB Submit: 6 Solved: 2 SubmitStatusWeb Board Descr ...
- 数学&模拟:随机化-矩阵随机化
BZOJ2396 给出三个行数和列数均为N的矩阵A.B.C,判断A*B=C是否成立 随机生成一个N乘1的矩阵R 然后判断A*B*R是否等于C*R,而前者相当于A*(B*R) 与后者一样都可以在O(N2 ...
- 2017ACM暑期多校联合训练 - Team 2 1008 HDU 6052 To my boyfriend (数学 模拟)
题目链接 Problem Description Dear Liao I never forget the moment I met with you. You carefully asked me: ...
- HDU 4498 Function Curve (分段,算曲线积分)
Function Curve Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65535/65535 K (Java/Others)To ...
- CF 990A. Commentary Boxes【数学/模拟】
[链接]:CF [题意]:对于一个数n,每次加一的代价是a,每次减一的代价是b,求被m整除时的最小代价. [分析]:分情况讨论,自己多举几个栗子. [代码]: #include<cstdio&g ...
- CF 450E Jzzhu and Apples 数学+模拟
E. Jzzhu and Apples time limit per test 1 second memory limit per test 256 megabytes input standard ...
- [CSP-S模拟测试]:砍树(数学+模拟)
题目传送门(内部题1) 输入格式 第一行两个整数$n$,$k$,代表树苗的数量和最大看书的总长度.第二行n个整数$a_i$,代表林先森希望每棵树苗的最终高度. 输出格式 一行一个整数,代表最大可能的d ...
随机推荐
- APP-8-文本语音
1.百度语音合成JS文件 baidu_tts_cors.js /** * 浏览器调用语音合成接口 * @param {Object} param 百度语音合成接口参数 * 请参考 https://ai ...
- 递归获取包下的class文件
```java(这个居然隐藏不了) public class TestUrl { public static void main(String[] args) { String pageName = ...
- Maven仓库—Nexus环境搭建及使用
使用Sonatype Nexus搭建Maven私服后如何添加第三方JAR包 http://blog.csdn.net/yanjun008/article/details/42084109 Nexus介 ...
- mysql 设置多个字段聚合自增
DROP TEMPORARY TABLE IF EXISTS ttp_firstInvest; CREATE TEMPORARY TABLE ttp_firstInvest ( userid varc ...
- LeetCode OJ 49. Group Anagrams
题目 Given an array of strings, group anagrams together. For example, given: ["eat", "t ...
- 2008-03-18 22:58 oracle基础知识小结
oracle 数据类型: 字段类型 中文说明 限制条件 ...
- 测试Array对象的sort方法的作用。将1985,1970,1999,1998,2000,1963这些年份按升序输出。
<script type="text/javascript">var years = new Array(1985,1970,1999,1998,2000,1963); ...
- AngularJS理论知识
两个核心概念 三个架构 MVC 一切应用程序都是数据的增删改查 那么总要有东西装数据吧 Model就是干这个事(数据表现和操作) View(展现数据) Controller(逻辑) 那么M- V- C ...
- hive 排序 分组计数后排序 几种不同函数的效果
[转至:http://blackproof.iteye.com/blog/2164260] 总结: 三个分析函数都是按照col1分组内从1开始排序 (假设4个数,第2和第3个数据相同) row_ ...
- CSS 选用字体
font-family CSS的font-family属性可以指定(选择)字体. 语法: 1 font-family: Gill Sans Extrabold, sans-serif; font-fa ...