C: C - Gambling

给你两个数列  每一回合A可以选择从第一个序列里面选一个数或者清除第二个序列里面选一个数 同理B能从第二序列里面选数或者清除第一个序列里面一个数

然后 求A所选的数之和-B所选数之和最大

贪心就行 两个优先队列每次比较另外一个序列最大的数是比自己序列最大的数大还是小 大就删除另一个序列的数 小就加上自己序列最大的数

可能会爆int  QAQ

#include<bits/stdc++.h>
using namespace std;
#define LL long long
priority_queue <LL ,vector<LL >,less<LL > >q,w;
int  main(){
    LL  n;
    cin>>n;
    ;j<n;j++){
       LL  x;
       cin>>x;
       q.push(x);
    }
    ;j<n;j++){
       LL  x;
       cin>>x;
       w.push(x);
    }
    ;j<n/;j++){
       q.push();
       w.push();
    }
    LL  l=;
    LL  ans=,ans1=;
    while(!q.empty()&&!w.empty()){
       LL  x=q.top(),y=w.top();
       ==){
          if(x<y) w.pop();
          else{
             ans+=x;
             q.pop();
          }
       }else{
          if(x>y) q.pop();
          else{
             ans1+=y;
             w.pop();
          }
       }
       l++;
    }
    cout<<ans-ans1<<endl;

    ;
}

D - Slime

给你一个序列 每次可以选两个相邻的数 组合成一个新的数 结果为 A-B

让你求当合并到一个数的时候求这个数的最大值

当全是正数(>=0) 或者全是负数的时候直接求出来最大最小 然后序列求和 减去最大或者最小*2 就可以了

当正负数组合时 就直接对序列求和

当时没考虑完全 代码有点乱

#include<bits/stdc++.h>
using namespace std;
#define LL long long
#define inf 0x3f3f3f3f
#define maxn 500000+50
LL a[maxn];
int main(){
  ;
  cin>>n;
  ;
  ;j<n;j++){
     scanf("%lld",&a[j]);
     ) fa=;
  }
  ) cout<<a[]<<endl;
  ){
      cout<<max(a[]-a[],a[]-a[])<<endl;
  }else{
      LL ans=;
      ){
         LL mi=inf;
         ;j<n;j++){
            mi=min(mi,a[j]);
            ans+=abs(a[j]);
         }
         ans-=mi*;
         cout<<ans<<endl;
         ;
      }else{
         LL i=;
         ;j<n;j++){
             ) i++;
         }
         if(i!=n){
            ;j<n;j++){
               ans+=abs(a[j]);
            }
            cout<<ans<<endl;
            ;
         }else{
             LL mi=-inf;
             ;j<n;j++){
                mi=max(mi,a[j]);
                ans+=abs(a[j]);
             }
             ans+=mi*;
             cout<<ans<<endl;
             ;
         }
      }
  }
  ;
}

Codeforces Round #508 (Div. 2) C D的更多相关文章

  1. Codeforces Round #508 (Div. 2)

    Codeforces Round #508 (Div. 2) http://codeforces.com/contest/1038 A #include<bits/stdc++.h> us ...

  2. Codeforces Round #508 (Div. 2) E. Maximum Matching(欧拉路径)

     E. Maximum Matching 题目链接:https://codeforces.com/contest/1038/problem/E 题意: 给出n个项链,每条项链左边和右边都有一种颜色(范 ...

  3. Codeforces Round #508 (Div. 2) D. Slime

    D. Slime 题目链接:https://codeforces.com/contest/1038/problem/D 题意: 给出两个数,然后每次可以对相邻的两个数合并,比如x,y,那么合并过后就是 ...

  4. [Codeforces Round #508 (Div. 2)][Codeforces 1038E. Maximum Matching]

    前几天给舍友讲这题的时候感觉挺有意思的,就贴上来吧... 题目链接:1038E - Maximum Matching 题目大意:有\(n\)个棒子,每个条两端有颜色\(c1,c2\)以及他的价值\(v ...

  5. 题解——Codeforces Round #508 (Div. 2) T3 (贪心)

    贪心的选取最优解 然后相减好 记得要开long long #include <cstdio> #include <algorithm> #include <cstring ...

  6. 题解——Codeforces Round #508 (Div. 2) T2 (构造)

    按照题意构造集合即可 注意无解情况的判断 #include <cstdio> #include <algorithm> #include <cstring> #in ...

  7. 题解——Codeforces Round #508 (Div. 2) T1 (模拟)

    依照题意暴力模拟即可A掉 #include <cstdio> #include <algorithm> #include <cstring> #include &l ...

  8. Codeforces 1038F Wrap Around (Codeforces Round #508 (Div. 2) F) 题解

    写在前面 此题数据量居然才出到\(n=40\)???(黑人问号)以下给出一个串长\(|S|=100,n=10^9\)的题解. 题目描述 给一个长度不超过\(m\)的01串S,问有多少个长度不超过\(n ...

  9. Codeforces Round #508 (Div. 2)【A,B,C,D】【实验室日常周赛训练】

    #include<bits/stdc++.h> using namespace std; #define inf 0x3f3f3f3f3f3f #define int long long ...

随机推荐

  1. IdentityServer4【QuickStart】之设置和概述

    设置和概述 有两个基本的方式来开启一个新的IdentityServer项目: 从头开始 从asp.net Identity模板开始 如果你从头开始,我们提供了一些基于内存中构建的存储,所以你不必一开始 ...

  2. jquery on绑定事件

    描述:给一个或多个元素(当前的或未来的)的一个或多个事件绑定一个事件处理函数.(1.7版本开始支持,是 bind().live() 和 delegate() 方法的新的替代品) 语法:.on( eve ...

  3. Azure系列2.1.1 —— BlobContainerPermissions

    (小弟自学Azure,文中有不正确之处,请路过各位大神指正.) 网上azure的资料较少,尤其是API,全是英文的,中文资料更是少之又少.这次由于公司项目需要使用Azure,所以对Azure的一些学习 ...

  4. SpringMVC+Spring+Mybatis+AngularJS 多规格保存示例代码

    insert时拿到最新增加的id值 绑定参数 js 实体类 Service实现类 Controller

  5. Eclipse打开java文件繁体字

    右键-->properties-->Resource-->Text file encoding, 改成utf-8 .

  6. centOS7搭建NFS服务器

    借鉴别人这篇博客搭建成功的:http://blog.51cto.com/mrxiong2017/2087001 NFS系统:用来共享文件.图片.视频 准备两个centOS7服务器,一个作NFS ser ...

  7. mybatis generator的maven插件,找不到properties的配置文件错误的解决

    第一次运行的时候,maven插件是正确运行了的 但后面对 maven 的 build节点做了一点修改,就开始报错,找不到 properties标签指定的的数据库连接配置文件了 修改部分如下: 这个操作 ...

  8. LODOP设置判断后执行哪个

    LODOP的语句是普通的语句,可以通过JS判断确定要执行哪个,或通过循环循环执行一些语句.如果需要执行某些打印项在哪些条件下不打印,不需要通过代码删除打印项,类似LODOP.SET_PRINT_STY ...

  9. Jenkins+PowerShell持续集成环境搭建(七)构建触发器

    Jenkins 有三种类型的构建触发器,如下图: Build after other projects are built:在其他项目构建后构建: Build periodically:定时构建: P ...

  10. codeforces231C

    To Add or Not to Add CodeForces - 231C A piece of paper contains an array of n integers a1, a2, ..., ...