zoukankan      html  css  js  c++  java
  • cf E. Fox and Card Game

    http://codeforces.com/contest/389/problem/E

    题意:给你n个序列,然后两个人x,y,两个人玩游戏,x从序列的前面取,y从序列的后面取,两个人都想自己得到的数的和尽可能大,最后输出两个人得到的数的和。

    思路:如果序列的个数为偶数的话,前面一半为x所得,后面一半为y所得; 如果为奇数的话,中间的数根据它的大小决定谁得到。这样的处理方式因为两个人都尽可能的取得序列中的最大,在谁的那一半数大的,另一个人取不到,有的时候可以先放一放,去取别人即将取到的数。

     1 #include <cstdio>
     2 #include <cstring>
     3 #include <queue>
     4 #include <vector>
     5 #include <algorithm>
     6 #define ll long long
     7 #define maxn 1000
     8 using namespace std;
     9 
    10 int n;
    11 int x[maxn];
    12 
    13 int main()
    14 {
    15     scanf("%d",&n);
    16     int ans1=0,ans2=0;
    17     int x,k;
    18     vector<int>q;
    19     while(n--)
    20     {
    21         scanf("%d",&k);
    22         for(int i=1; i<=k/2; i++)
    23         {
    24             scanf("%d",&x);
    25             ans1+=x;
    26         }
    27         if(k%2)
    28         {
    29             scanf("%d",&x);
    30             q.push_back(x);
    31         }
    32         for(int i=1; i<=k/2; i++)
    33         {
    34             scanf("%d",&x);
    35             ans2+=x;
    36         }
    37     }
    38     sort(q.begin(),q.end());
    39     int cnt=0;
    40     for(int i=(int)q.size()-1; i>=0; i--)
    41     {
    42         if(cnt%2==0) ans1+=q[i];
    43         else ans2+=q[i];
    44         cnt++;
    45     }
    46     printf("%d %d
    ",ans1,ans2);
    47     return 0;
    48 }
    View Code
  • 相关阅读:
    [iOS开发] 使用Jenkins自动打包并上传至蒲公英
    修改Jenkins的BUILD_NUMBER
    RabbitMQ on windows开启远程访问
    SpringMVC 表单复选框处理
    Spring文件上传配置
    ES6中Reflect 与 Proxy
    vuex中getter的用法
    Toast组建的实现
    link和@import的区别
    Vue组件之props选项
  • 原文地址:https://www.cnblogs.com/fanminghui/p/4248734.html
Copyright © 2011-2022 走看看