首页 > 其他 > 详细

2016-2017 ACM-ICPC Northwestern European Regional Programming Contest (NWERC 2016) 个人题解

时间:2019-10-06 19:57:55      阅读:127      评论:0      收藏:0      [点我收藏+]

 

 

  • Problem C Careful Ascent

可怜的我们被卡在了签到题上,当时用的二分来做,结果速度的左右区间写成了[0,1e32],而改成[-1e32,1e32]就通过了,哎~,怎么就没想到去改一下区间的范围呢。

下面是正常的数学解法,类似于解一元一次方程。

#include <iostream>
using namespace std;
typedef long long ll;

ll x,y,n;
ll a,b;double c;
int main(){
    cin>>x>>y>>n;
    ll sum = y;
    double X = 0;
    while (n--){
        cin>>a>>b>>c;
        sum -= (b-a);
        X += (b-a)*c;
    }
    X += sum;
    printf("%.10f\n",(double)x/X);
    return 0;
}

 

2016-2017 ACM-ICPC Northwestern European Regional Programming Contest (NWERC 2016) 个人题解

原文:https://www.cnblogs.com/bigbrox/p/11628112.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!