zoukankan      html  css  js  c++  java
  • hdu--4974--贪心

    多校的题 切了5 6题 就这道会点= =

    其他都是些什么树的分治 图论的一些东西= =

    这题 贪心 不难发现吧 每次都尽量选取各自都能获得1分的方案 但可能会出现1 0这种只能一个人得1分 一个人得0分得的方案。

    一开始 我很sb地 wa在任意选取了2人 比较他们得分大小。。

    正确姿势当然是要 从大到小的来选取。  然后剩余的继续留着选取

    放入个优先队列来实现比较好

     1 #include <iostream>
     2 #include <cstring>
     3 #include <algorithm>
     4 #include <queue>
     5 using namespace std;
     6 
     7 priority_queue<int> q;
     8 
     9 void init( )
    10 {
    11     while( !q.empty() )
    12         q.pop();
    13 }
    14 
    15 int main()
    16 {
    17     cin.sync_with_stdio(false);
    18     int t , n , num , ans;
    19     int x , y;
    20     cin >> t;
    21     for( int k = 1 ; k<=t ; k++ )
    22     {
    23         cin >> n;
    24         init( );
    25         ans = 0;
    26         for( int i = 1 ; i<=n ; i++ )
    27         {
    28             cin >> num;
    29             q.push(num);
    30         }
    31         while( !q.empty() )
    32         {
    33             x = q.top();
    34             if( x<=0 )
    35                 break;
    36             q.pop();
    37             if( !q.empty() )
    38             {
    39                 y = q.top();
    40                 q.pop();
    41                 if( y<=0 )
    42                 {
    43                     ans += x;
    44                     break;
    45                 }
    46                 q.push( x-y );
    47                 ans += y;
    48             }
    49             else
    50             {
    51                 ans += x;
    52                 break;
    53             }
    54         }
    55         cout << "Case #" << k << ": " << ans << endl;
    56     }
    57     return 0;
    58 }    
    View Code
  • 相关阅读:
    nginx部分功能配置备忘
    mysql 截取数据 组合排序
    java实现排列组合
    每日记载内容总结48
    http请求转换为https请求
    每日记载内容总结47
    rabbitmq 基本操作
    redis免密登录被入侵解决方式
    支付宝支付sign_type从RSA到RSA2遇到的问题
    Java面试题2
  • 原文地址:https://www.cnblogs.com/radical/p/4172170.html
Copyright © 2011-2022 走看看