zoukankan      html  css  js  c++  java
  • 湖南多校对抗赛(2015.03.28) B Design road

    题意:给你起点(0,0),终点(x,y),中间有很多条河, 在河上面建桥花费c1,在陆地建路花费c2,问你最小花费是多少。

    解题思路:我们知道,我们考虑的时候完全可以把河都移动到一边来求,这样只需要三分就行了。

    解题代码:

     1 // File Name: b.cpp
     2 // Author: darkdream
     3 // Created Time: 2015年03月28日 星期六 13时26分39秒
     4 
     5 #include<vector>
     6 #include<list>
     7 #include<map>
     8 #include<set>
     9 #include<deque>
    10 #include<stack>
    11 #include<bitset>
    12 #include<algorithm>
    13 #include<functional>
    14 #include<numeric>
    15 #include<utility>
    16 #include<sstream>
    17 #include<iostream>
    18 #include<iomanip>
    19 #include<cstdio>
    20 #include<cmath>
    21 #include<cstdlib>
    22 #include<cstring>
    23 #include<ctime>
    24 #define LL long long
    25 
    26 using namespace std;
    27 int n , x, y , c1,c2;
    28 int tsum;
    29 double ans ;
    30 double dis(double x1,double y1,double x2,double y2)
    31 {
    32    return sqrt((x1-x2)*(x1-x2) + (y1-y2)*(y1-y2));
    33 }
    34 void fen(double low ,double high)
    35 {
    36    double mid1 = low + (high - low) *1/3; 
    37    double mid2 = low + (high - low) *2/3;
    38    double ansmid1 =dis(0,0,tsum,mid1)*c2 + dis(tsum,mid1,x,y)*c1; 
    39    double ansmid2 =dis(0,0,tsum,mid2)*c2 + dis(tsum,mid2,x,y)*c1; 
    40    if(fabs(ansmid2-ansmid1) < 1e-6)
    41    {
    42        ans = ansmid2;
    43        return;
    44    }
    45    if(ansmid1 < ansmid2)
    46      fen(low,mid2);
    47    else fen(mid1,high);
    48 }
    49 int main(){
    50    while(scanf("%d %d %d %d %d",&n,&x,&y,&c1,&c2) != EOF) 
    51    {
    52        int tx, ty ;
    53        tsum = 0 ; 
    54        for(int i = 1;i<= n ;i++)
    55        {
    56          scanf("%d %d",&tx,&ty);
    57          tsum += ty;
    58        }
    59        fen(0,y);
    60        printf("%.2f
    ",ans);
    61    }
    62 return 0;
    63 }
    View Code
    没有梦想,何谈远方
  • 相关阅读:
    Hadoop与分布式开发
    Hadoop体系结构
    MapReduce基本流程与设计思想初步
    hadoop集群启动时DataNode节点启动失败
    初识Hadoop
    国家标准免费下载网站大全
    Effective C++ 之 Item 3:尽可能使用 const
    Effective C++ 之 Item 2:尽量以 const, enum, inline 替换 #define
    Effective C++ 之 Item 1: 视C++为一个语言联邦
    Effective C++ 之 0 导读(Introduction)
  • 原文地址:https://www.cnblogs.com/zyue/p/4375235.html
Copyright © 2011-2022 走看看