Codeforces Round #111 (Div. 2)
Codeforces Round #111 (Div. 2)
C. Find Pair
题意
- 给\(N(N \le 10^5)\)个数,在所有\(N^2\)对数中求第\(K(K \le N^2)\)对数。
- 排序按照pair比较,first为第一关键字,second第二关键字。
思路
- 统计\(cnt[x]\)为值\(x\)出现的次数。
- 第一关键字为\(x\)的对数为\(cnt[x] \times n\),显然可以找到第一关键字。
- 在确定第一关键字\(x\)后,第二关键字\(y\)的出现次数为\(cnt[x] \times cnt[y]\),通过前缀和就可以求出第二关键字。
代码
D. Edges in MST
题意
- 一张带边权的无向图,有\(N(N \le 10^5)\)个点,\(M(M \le 10^5)\)条边。
- 对于每条边,判定在最小生成树的状态:在任一最小生成树中(any)、在一种最小生成树中(at least one)、不在任一最小生成树中(none)。
思路
- 按边权从小到大做,边权相同的一起考虑。
- 边权较小的边形成的连通块缩点,考虑当前权值的边:
- 若当前的边会与边权小的边构成环,说明这条边显然不在任一生成树中。
- 若当前的某些边构成环,说明这些边只会在一种生成树中,否则割边会在任一生成树中。
代码
E. Buses and People
题意
- 给\(N(N \le 10^5)\)个区间\([s_i, f_i]\)及权值\(t_i\), \(s_i, f_i, t_i \le 10^9\),保证\(t_i \ne t_j, i \ne j\)
- 给\(M(M \le 10^5)\)个区间\([l_i, r_i]\)和权值\(b_i\)。
- 对于\(M\)的区间,找到最小的\(t_j\)的编号\(j\),使得\(b_i \le t_j\)且\(s_j \le l_i, r_i \le f_j\)。
思路
- 若\(s_j \le 1_i\),则相当于在\([b_i, \max{t}]\)中找到第一个\(f_j \ge r_i\)。
- 因为每个\(t_j\)均不相同,则用线段树维护对于区间\([t_i,t_j]\)的最大\(f\)值。
- 对于每个\(b_i\),二分\(t\)即可。
代码
Codeforces Round #111 (Div. 2)的更多相关文章
- Codeforces Round #497 (Div. 2)
Codeforces Round #497 (Div. 2) https://codeforces.com/contest/1008 A #include<bits/stdc++.h> u ...
- Codeforces Round #633 (Div. 2)
Codeforces Round #633(Div.2) \(A.Filling\ Diamonds\) 答案就是构成的六边形数量+1 //#pragma GCC optimize("O3& ...
- Codeforces Round #789 (Div. 2) A-C
Codeforces Round #789 (Div. 2) A-C A 题目 https://codeforces.com/problemset/problem/1677/A 题解 思路 知识点:模 ...
- 刷题记录:Codeforces Round #739 (Div. 3)
Codeforces Round #739 (Div. 3) 20210907.网址:https://codeforces.com/contest/1560. --(叹). A 不希望出现带" ...
- Codeforces Round #366 (Div. 2) ABC
Codeforces Round #366 (Div. 2) A I hate that I love that I hate it水题 #I hate that I love that I hate ...
- Codeforces Round #354 (Div. 2) ABCD
Codeforces Round #354 (Div. 2) Problems # Name A Nicholas and Permutation standard input/out ...
- Codeforces Round #368 (Div. 2)
直达–>Codeforces Round #368 (Div. 2) A Brain’s Photos 给你一个NxM的矩阵,一个字母代表一种颜色,如果有”C”,”M”,”Y”三种中任意一种就输 ...
- cf之路,1,Codeforces Round #345 (Div. 2)
cf之路,1,Codeforces Round #345 (Div. 2) ps:昨天第一次参加cf比赛,比赛之前为了熟悉下cf比赛题目的难度.所以做了round#345连试试水的深浅..... ...
- Codeforces Round #279 (Div. 2) ABCDE
Codeforces Round #279 (Div. 2) 做得我都变绿了! Problems # Name A Team Olympiad standard input/outpu ...
随机推荐
- 使用Myeclipse创建自定义签名debug keystore
1.在已经创建后的android项目上右击鼠标,如图所示 2.选择next下一步 3.选择create new keystore 注意 这里密码要输入android 4.点击next,录入基本信息 ...
- DropMaster
DropMaster 是4个原生 VCL 控件的集合,在 Delphi 和 C++Builder 中使用.虽然包含在 Delphi 和 C++Builder 中的 VCL 组件允许同一程序内窗口之间的 ...
- [转]Vimium快捷键
from: http://www.cppblog.com/deercoder/archive/2011/10/22/158886.html 今天下午折腾了一下Chrome下面的一个插件Vimium的使 ...
- php中的include()的使用技巧
php中的include()的使用技巧 include() 语句包括并运行指定文件. 以下文档也适用于 require().这两种结构除了在如何处理失败之外完全一样.include() 产生一个警告而 ...
- fragment的一些bug
自从Android3.0引入了Fragment之后,使用Activity去嵌套一些Fragment的做法也变得更加流行,这确实是 Fragment带来的一些优点,比如说:Fragment可以使你能够将 ...
- 自定义的BroadCastReceiver
1.MainActivity2.java中的代码,主要是使用意图发送广播 public class MainActivity2 extends Activity{ @Override protecte ...
- .net 找回密码的第一步 第二步 第三步的进程条
先写一个div作为存放这个进程条的容器 开始写js 根据jQuery选择器找到需要加载ystep1的容器 loadstep方法可以初始化 steps参数表示步骤名称,content则是鼠标移动到当前位 ...
- 12-24 关于UIScroView 控件的学习
在iOS开发中,滚动视图(UIScrollView)通常用于显示内容尺寸大于屏幕尺寸的视图.滚动视图有以下两个主要作用: 让用户可以通过拖拽手势来观看想看到的内容 让用户可以通过捏合手势来放大或缩小观 ...
- Oracle 获取用户表的字段定义
获取用户表列表: select * from user_tables; select * from all_tables; select * from dba_tables; 获取表的字段: sele ...
- simtrace之探秘SIM卡中的世界
0×00 关于SIM卡 众所周知SIM卡是一张插在手机上的小卡,其全称为Subscriber Identity Module 客户识别模块.不过,这个世界上并没有多少人知道SIM卡中的操作系统是基于j ...