Checkposts \(tarjan\) 如果是 \(DAG\) 图,则只用找入度为 \(0\) 的点即可 因此考虑缩点后,找所有入度为 \(0\) 的点 最小值则为,缩点后所有入度为 \(0\) 的强连通块中,每个都拿一个代价最小的点 方案数为,在上述的强连通块,记录一下代价最小的点有多少个,全部相乘即可 因此 \(tarjan\)
Flight Routes Check 判断是不是一个强连通图,如果不是,就找出不能到达的单程 tarjan 模板 判断不能到达的,直接从 \(1\) 开始走一次搜索,如果与 \(1\) 不同强连通块上的点,且 \(1\) 能够到达那个点,显然答案就是从那个点到 \(1\) 记得考虑整个图不连通的情况 #include <iostream> #incl
P3373 【模板】线段树 2 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 对于有加法和乘法两种操作遵循先乘后加 push_down(在查询或修改的区间与当前区间有交集当不完全覆盖时需要将当前结点的lazy标记传递到它的左右儿子节点,并同步修改它左右儿子的值(根据lazy标记修改) 处理左右
获得当前系统时间: DateTime dt = DateTime.Now; Environment.TickCount可以得到“系统启动到现在”的毫秒值 DateTime now = DateTime.Now; Console.WriteLine(now.ToString("yyyy-MM-dd")); //按yyyy-MM-dd格式输出s Console.WriteLine(dt.ToString()); // 26/11/2009 AM 1
大新闻 有一个在 \([0,n)\) 内等概率随机选择的整数,记其为 \(x\) . 我们需要在 \([0,n)\) 内找到某一个整数 \(y\),使得 \(x\oplus y\) 达到最大值 . 问题在于,有可能对 \(x\) 进行了加密 . 情报显示,没有被加密的概率为 \(p\) . 我们决定采取这样的策略:如果 \(x\) 没有被加密,那么我
#include<bits/stdc++.h> using namespace std; #define ll long long #define endl "\n" #define fi first #define se second #define pb push_back #define pll pair<ll,ll> const ll mod = 1e5 + 3; const ll N = 2e5 + 9; using namespace std; c
2022牛客多校第六场 过程 本场1h成功签到两题,随后贪心构造把A过了,属于是大胆尝试,不会证明,此时四题,队友卡在了M,而我对dp也不是很熟悉,但其它题一看过题人数,不如和队友一起看M,终于队友找到了bug在半场时刻过了,随后就一起看I,在个位数过题中I的两位数过题已经不错了。I一开始就走进了误
PAM(回文自动机) 应用 本质不同回文子串个数:个串的本质不同回文子串个数等于回文树的状态数(排除奇根和偶根两个状态)。 回文子串出现次数:由于回文树的构造过程中,节点本身就是按照拓扑序插入,因此只需要逆序枚举所有状态,将当前状态的出现次数加到其 \(fail\) 指针对应状态的出现次数
概述 又名:来自学长的告别 估分:\(???+???+40+20=???\) 实际挂分:\(0+10+20+50=90\) rk 19 赛时 干了快两小时 T1,以为是最可做,结果赛后发现 T1 人均最低分。 T2 最后感觉像是二分,但是判断写的是关于圆位置关系的函数,假掉了。 T3 和 T4 没什么思路,打了暴力跑路。 反思 和暴力拍过了,可
CodeForces1602 Two Subsequences 解析: 题目大意 给你一个字符串 \(s\)。你需要两个非空字符串 \(a\) 和 \(b\) 并且满足下面的条件: 字符串 \(a\) 和 \(b\) 都是 \(s\) 的子序列。 对于原字符串的每一个字符,必须属于 \(a\) 和 \(b\) 之一。 \(a\) 是所有满足条件的字符串中字典序
在处理一些交互事件的时候,很容易出现单击或双击,不小心触发了多次的问题。 目前没有找到很好的处理办法。于是想着自己封装一个类。 public class EventResponseController { private static EventResponseController _instance; public static EventResponseController I
因为最近不想做简单题,所以只有 C-E C.The Number Of Good Substrings 题目描述: 原题面 题目分析: 我们发现一个长度为 \(len\) 的二进制串能表示的长度最多就是 \(2^{len}-1\),所以我们就能很明显的发现一个性质:我们枚举的区间长度不可能超过 \(\log n\),因为如果超过这个数值很显然
总体来说没有全切掉就比较遗憾,主要还是手速比较慢。 A.Everyone Loves to Sleep 题目描述: 原题面 题目分析: 考虑闹钟的数量很少,所以直接暴力计算出睡到每一个闹钟响的时间,然后取最小值就好了。 代码详解: 点击查看代码 #include<bits/stdc++.h> using namespace std; struct node{
Problem - C - Codeforces 题意 有 n ( n <= 36) 个点,每个点有颜色,每个颜色都相同的权值(为正数);有 m 条边,u -> v 且 u < v, 求从 1 号点到 i 号点的路径上,选颜色互不相同的一些点,使权值和最大 状压dp 首先可考虑 TSP 问题类似的状压dp方法,但 \(36*2^{36}\) 太大,考虑优化 可以分析一
CF1709E 题意: 给定一颗树,每个节点上都有数字,修改最少的节点上的数字,让树上不存在一条路径,异或后权值等于\(0\)。 \(1\leq n\leq 2*10^5,1\leq a_i<2^{30}\) 题解: 首先考虑如果一个点,修改了它的点值后,它的子节点都不需要考虑,因为可以把它改成一个很大的数字,永远不会异或成\(0\) 然
https://www.luogu.com.cn/problem/P3379 链式前向星存边 fa[i][j] 代表从i结点向上找 2^i 代的父亲,(i=0代表真父亲) dfs从根结点开始fa[now][i] = fa[fa[now][i - 1]][i - 1];代表当前结点的第2^i代父节点是当前结点2^(i-1)父节点的2^(i-1)代父节点,然后再对其连接到的非父结点df
link 最大密度子图的板子,虽然感觉这种一辈子只见得到一回的题目应该不存在啥模板的说法(没有应用的板子是没有灵魂哒)。 首先那个分数的柿子让人想到了01分数规划,然后套那玩意的板子。在check的过程中遇到经典问题:边有正权,点有负权,选择权值最大的子图。还是那样,把边抽象成点直接跑最
直到今天,不得不说出 Yubai 的真正含义 : 欲摆 Q : 我是怎么知道的呢? A : yzf 天天以可可爱爱萌萌哒哒的声音叫着这个 id,为了把萌萌体现出来所以变了变声调,拉了个长音,然后就变成 四声 + 三声了。 Q : 我为什么要说出来它的含义呢? A : 因为 I'm Yubai now! Q : 我为什么 Yubai 呢? A :
2022HDU多校第四场 过程 三题签到完成,吉吉在看了11一会后将01秒了,这里是我dp不够熟练,只能让吉吉来了,我好菜呀(哭),然后就坐牢开始了,我们轮流卡02和11,最后4题结束,惨淡收场。02属于是没想明白,另外时间不够,而11属实是坐大牢,看着它被人过穿,我们却毫无头绪,再一次在签到题上卡了太多时间,
官网:https://carbon.now.sh/ 1、不要上下左右的空隙 2、复制图片
基本数据类型和引用数据类型 1.存储空间:基本数据类型声明时就会赋予内存空间(4字节),引用数据类型,引用数据类型只会分配一个4byte的地址引用并不会分配具体的存储真实数据的空间 2.参数传递:基本数据类型在值传递调用过程中,只能把实参复制传递给形参,而不能把形参的值反向作用到实参
小白成长记——第十九天 今天主要学习了一些工具类的使用,在Java中,工具类的使用可以有效的提高效率,在编程开发中,工具类有很多,今天学的知识只是冰山一角,在接下来的学习中,我们要积累更多的工具类来完成工作,做到真正的提高效率,拉看看今天的笔记吧! java的值传递和引用传递j
今日学习内容: 1.java的值传递和所谓的引用传递本质上Java只有值传递,所有的赋值传参都是一次值得拷贝引用数据类型拷贝的就是引用地址,基本数据类型拷贝的是值,不会传入实例 2.常用API(Application Programming Interface)应用程序接口JDK给我们提供的一些已经写好的类,可以直接调方法解
string aa = DateTime.Now.ToShortDateString();//"2019/9/23" string bb = DateTime.Now.ToShortTimeString();//"上午 10:21" string ff = DateTime.Now.ToLongDateString();//2019年9月23日 string gg = DateTime.Now.ToLongTimeString();//上午 10:22:07 int
题目描述: 给定一个表示分数加减运算的字符串 expression ,你需要返回一个字符串形式的计算结果。 这个结果应该是 不可约分 的分数,即最简分数。 如果最终结果是一个整数,例如 2,你需要将它转换成分数形式,其分母为 1,所以 2 应该被转换为 2/1。 提示: 输入和输出字符串