题意:有$N$个人,你要让他们坐成若干个圆环。他们每个人需要坐一把椅子,左手边至少要有$l_i$个空椅子,右手边至少要有$r_i$个空椅子,问最少需要多少个椅子。$N \leq 10^5 \,,\, l_i,r_i \leq 10^9$

没有很好想,但也不难。
贪心地考虑什么样的人会坐在相邻位置会使得答案最优,一定是一个人的左手与另一个人的右手相差较小时较好,因为这样子重复利用的椅子数量更多。那么我们可以由此获得贪心策略:对左手与右手分别排序,然后求$\sum\limits_{i=1}^n max(l_i,r_i)$即可。这里$l_i$与$r_i$的搭配就相当于两个人相邻而坐。
 #include<bits/stdc++.h>
 #define MAXN 100010
 using namespace std;
 int numL[MAXN] , numR[MAXN];
 int main(){
    int N;
    cin >> N;
     ; i <= N ; i++)
        cin >> numL[i] >> numR[i];
    sort(numL +  , numL + N + );
    sort(numR +  , numR + N + );
    long long ans = N;
     ; i <= N ; i++)
      ans += max(numL[i] , numR[i]);
    cout << ans;
    ;
 }

CF1060D Social Circle 排序的更多相关文章

  1. cf1060D. Social Circles(贪心)

    题意 题目链接 Sol 我是这样考虑的:从大到小考虑每个\(l, r\),最大的\(l\)应该和最大的\(r\)匹配(不然就亏了),其次次大的\(r\)应该和次大的\(l\)匹配 然后就过了.. /* ...

  2. CF1060D Social Circles

    思路: 贪心.既然每个人的左边是其他人的右边,每个人的右边是其他人的左边,那么使重叠的部分最多即可. 实现: #include <bits/stdc++.h> using namespac ...

  3. July 17th, Week 30th Sunday, 2016

    You are beautiful, but that is not why I love you. 你如此美丽,但我并非因此而爱你. Although we have always been tol ...

  4. https://www.testingcircus.com/tell-me-about-yourself-6-sample-answers-software-testers/

    https://www.testingcircus.com/tell-me-about-yourself-6-sample-answers-software-testers/ Tell Me Abou ...

  5. Autodesk 招聘Revit二次开发咨询顾问,与Autodesk全球团队紧密合作,提高职业生涯的好机会

    朋友们, 因为我离开Autodesk的全职工作(变为部分时间工作),我的职位空出.急招这个职位.请踊跃把你周围的朋友推荐给Autodesk. 请将简历发给我转交给Autodesk 我的邮箱yexion ...

  6. 东大oj-1591 Circle of friends

    题目描述 Nowadays, "Circle of Friends" is a very popular social networking platform in WeChat. ...

  7. hdu 4324 拓扑排序

    题意:给出一堆人的喜爱关系,判断有没有三角恋-_-|| 其实就是判断是否存在三条边的环. 一开始我是这么想的: 先拓扑排序,如果没有环那就直接No 如果有环?挑出环里的任意一个点(拓扑排序结束后不在拓 ...

  8. 后缀数组 --- WOj 1564 Problem 1564 - A - Circle

    Problem 1564 - A - Circle Problem's Link:   http://acm.whu.edu.cn/land/problem/detail?problem_id=156 ...

  9. 有向图的拓扑排序算法JAVA实现

    一,问题描述 给定一个有向图G=(V,E),将之进行拓扑排序,如果图有环,则提示异常. 要想实现图的算法,如拓扑排序.最短路径……并运行看输出结果,首先就得构造一个图.由于构造图的方式有很多种,这里假 ...

随机推荐

  1. Python Python中的反射机制

    Python中的反射机制 by:授客 QQ:1033553122 概念 借用java中的定义:在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法:对于任意一个对象,都能够调用它的任意一个方 ...

  2. 《InsideC#》笔记(十) 异常处理

    CLR的作用之一是处理异常.通过自动的内存和资源管理可以避免一部分异常,然后借助强类型系统还可以捕获运行时异常. 一 异常基础 异常处理系统保护四个关键字:try,catch,throw,finall ...

  3. Python之随机森林实战

    代码实现: # -*- coding: utf-8 -*- """ Created on Tue Sep 4 09:38:57 2018 @author: zhen &q ...

  4. 请问在EXECUTE IMMEDIATE中如何使用带有引号

    转自:http://bbs.csdn.net/topics/300191423 从第一引号向后,如果遇到第二个引号,则看这个引号后面时候有紧挨着的引号,如果有则第二个引号被转义,即该保留该引号后面紧跟 ...

  5. 【PAT】B1058 选择题(20 分)

    这道题的逻辑怪复杂的,写起来蛮费时间的 结构体中要储存的信息多,整体不难,信息量大,容易把人搞蒙 #include<stdio.h> #include<string.h> #i ...

  6. 【PAT】B1063 计算谱半径(20 分)

    水题,没有难点 #include<stdio.h> #include<algorithm> #include<math.h> using namespace std ...

  7. Linux永久修改系统时间

    1.date 查看系统时间 2.hwclock --show 查看硬件的时间 3.hwclock --set --date '2017-08-16 17:17:00' 设置硬件时间为17年8月16日1 ...

  8. Lua 与C 交互之LUA_REGISTRYINDEX(3)

    通常来说,C函数需要保留一些非局部的数据,也就是指那些超过他们作用范围的数据.C语言中我们使用全局变量或者static变量来满足这种需要.然而当你为Lua设计一个程序库的时候,全局变量和static变 ...

  9. 用智能TFT液晶模块这种串口屏做产品界面设计太简单了,大大的节省了开发时间

    随着科技的发展,TFT液晶显示屏在我们日常中可以随处可见. 工业设备上的显示也逐渐由段式显示.黑白显示转向彩色的TFT液晶显示屏. 普通的TFT液晶显示屏由于开发起来比较麻烦, 需要嵌入式工程时写程序 ...

  10. nginx与location语法详解

    Location语法优先级排列 匹配符 匹配规则 优先级 = 精确匹配 ^~ 以某个字符串开头 ~ 区分大小写的正则匹配 ~* 不区分大小写的正则匹配 !~ 区分大小写不匹配的正则 !~* 不区分大小 ...