zoukankan      html  css  js  c++  java
  • poj3262 Protecting the Flowers

    思路:

    简单贪心,每次选择性价比最高的。

    实现:

     1 #include <iostream>
     2 #include <cstdio>
     3 #include <algorithm>
     4 using namespace std;
     5 
     6 struct node
     7 {
     8     int t, d;
     9 };
    10 int n;
    11 node a[100005];
    12 int sum[100005];
    13 
    14 bool cmp(const node & a, const node & b)
    15 {
    16     double x = a.d * 1.0 / a.t;
    17     double y = b.d * 1.0 / b.t;
    18     return x > y;
    19 }
    20 
    21 int main()
    22 {
    23     cin >> n;
    24     for (int i = 0; i < n; i++)
    25     {
    26         scanf("%d %d", &a[i].t, &a[i].d);
    27     }
    28     sort(a, a + n, cmp);
    29     sum[n - 1] = a[n - 1].d;
    30     for (int i = n - 2; i >= 0; i--)
    31     {
    32         sum[i] = sum[i + 1] + a[i].d;
    33     }
    34     long long total = 0;
    35     for (int i = 0; i < n - 1; i++)
    36     {
    37         total += sum[i + 1] * 2 * a[i].t;
    38     }
    39     cout << total << endl;
    40     return 0;
    41 }
  • 相关阅读:
    unitTest单元测试框架
    Day06_页面发布与课程管理
    Day05_RabbitMQ研究
    Day04_页面静态化
    Day04_freemarker
    Day03_CMS页面管理开发
    Java概述练习题
    01_语言概述
    00_编程入门
    德道经
  • 原文地址:https://www.cnblogs.com/wangyiming/p/6579514.html
Copyright © 2011-2022 走看看