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)。

思路

  • 按边权从小到大做,边权相同的一起考虑。
  • 边权较小的边形成的连通块缩点,考虑当前权值的边:
  1. 若当前的边会与边权小的边构成环,说明这条边显然不在任一生成树中。
  2. 若当前的某些边构成环,说明这些边只会在一种生成树中,否则割边会在任一生成树中。

代码


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)的更多相关文章

  1. Codeforces Round #497 (Div. 2)

    Codeforces Round #497 (Div. 2) https://codeforces.com/contest/1008 A #include<bits/stdc++.h> u ...

  2. Codeforces Round #633 (Div. 2)

    Codeforces Round #633(Div.2) \(A.Filling\ Diamonds\) 答案就是构成的六边形数量+1 //#pragma GCC optimize("O3& ...

  3. Codeforces Round #789 (Div. 2) A-C

    Codeforces Round #789 (Div. 2) A-C A 题目 https://codeforces.com/problemset/problem/1677/A 题解 思路 知识点:模 ...

  4. 刷题记录:Codeforces Round #739 (Div. 3)

    Codeforces Round #739 (Div. 3) 20210907.网址:https://codeforces.com/contest/1560. --(叹). A 不希望出现带" ...

  5. 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 ...

  6. Codeforces Round #354 (Div. 2) ABCD

    Codeforces Round #354 (Div. 2) Problems     # Name     A Nicholas and Permutation standard input/out ...

  7. Codeforces Round #368 (Div. 2)

    直达–>Codeforces Round #368 (Div. 2) A Brain’s Photos 给你一个NxM的矩阵,一个字母代表一种颜色,如果有”C”,”M”,”Y”三种中任意一种就输 ...

  8. cf之路,1,Codeforces Round #345 (Div. 2)

     cf之路,1,Codeforces Round #345 (Div. 2) ps:昨天第一次参加cf比赛,比赛之前为了熟悉下cf比赛题目的难度.所以做了round#345连试试水的深浅.....   ...

  9. Codeforces Round #279 (Div. 2) ABCDE

    Codeforces Round #279 (Div. 2) 做得我都变绿了! Problems     # Name     A Team Olympiad standard input/outpu ...

随机推荐

  1. 【转发】CentOS 7 巨大变动之 systemd 取代 SysV的Init

    1 systemd是什么 首先systmed是一个用户空间的程序,属于应用程序,不属于Linux内核范畴,Linux内核的主要特征在所有发行版中是统一的,厂商可以自由改变的是用户空间的应用程序.   ...

  2. Julia中文教程资源.txt

    Julia中文教程资源.txt 2016年3月28日 05:18:32 codegay 本文更新在这里: https://github.com/FGFW/julia-science-and-techn ...

  3. 关于struts2拦截器获取页面参数

    package InterCeptor; import java.util.Iterator;import java.util.Map;import java.util.Map.Entry;impor ...

  4. iOS 版本号Version和Build的区别

    一个version,一个build,都是设置版本的地方,有什么区别呢? 在ios中(Android等工程中也一样),有两种version,一种是 CFBundleVersion ("Bund ...

  5. ios上架

    1.登录developer.apple.com 2.点击member center后 进下图 3.点击certificates Identifiers进下图 4.点击Certificates进下图,首 ...

  6. Note_Master-Detail Application(iOS template)_01_YJYAppDelegate.h

    //YJYAppDelegate.h #import <UIKit/UIKit.h> @interface YJYAppDelegate : UIResponder <UIAppli ...

  7. FR #1题解

    A. 建图跑最小费用最大流.分类讨论每种情况如何连边,费用怎么定. #include<iostream> #include<cstdio> #include<cstrin ...

  8. codevs 5429 完全背包

    单调队列优化. 好像有点烦...调了许久. #include<iostream> #include<cstdio> #include<cstring> #inclu ...

  9. Win7 登入提示临时漫游档案

    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList

  10. FTP服务器移动文件目录

    已经可以移动文件了,原因是路径问题.还是用的Rename方法.原因是RenameTo=“”;这里的路径之前没包含文件名,而且相对路径和绝对路径都没弄对,所以之前一直不相信别人说的Rename可以移动文 ...