Gym-102780B Mysterious Resistors

原题链接:

https://vjudge.net/problem/Gym-102780B

AC代码:

#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include using namespace std;
const int INF = 0x3fffffff;
typedef long long ll;
typedef unsigned long long ull;
const int maxn = 1e6 + 10;void __init__() {ios::sync_with_stdio(false);cin.tie(0), cout.tie(0);
} //headint n;
double m;
int r[2000];int main() {__init__();cin >> n >> m;for (int i = 0; i < n; i++) {cin >> r[i];}double L = 0, R = 1e9;while (R - L > 1e-10) {double mid = L + (R - L) / 2;double sum = 0;for (int i = 0; i < n; i++) {sum += (r[i] * mid) / (r[i] + mid);}if (sum >= m)R = mid;else L = mid;}printf("%.7lf", R);return 0;
}

二分法不断缩小范围进行查找,注意精度的控制


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部