文章分类 - C++
C++
摘要:模拟赛不会写点双开了挂,现在复习一下 Tarjan 算法应用标程 变量解释: 名称 用途 类型 \(dfn\) 时间戳 int[] \(low\) 回溯最早时间戳 int[] \(child\) 孩子数 int[] \(ti\) 时间 int \(s\) 源点 int \(nme\) 所属连通分量
阅读全文
摘要:一个国家有 $n$ 个城市,可以看做一个无向连通图。
你有坐车和坐火车两种通行方式,对于从城市 $i$ 到城市 $j$ :
+ 坐汽车会花费 $D_{i,j} \times A$ 分钟
+ 坐火车会花费 $D_{i,j} \times B+C$ 分钟
给出 $n,A,B,C$,以及表示道路的邻接表,求从 $1$ 号城市旅行到 $n$ 号城市的最短路。**途中可以从坐汽车转换成做火车,但不能从坐火车转换成坐汽车。**
阅读全文
摘要:给你一个字符串 $S$ 和一个自然数 $K$。请找出对字符串 $S$ 执行下列操作 $0$ 次或 $0$ 次以上所得到的字符串的最小长度:
+ 在字符串中选择一个连续出现的 `of`;
+ 选择一个介于 $0$ 和 $K$ 之间的整数 $i$;
+ 从字符串中删除选中的 `of` 和其后面的 $i$ 个字符。
阅读全文
摘要:原题链接1 原题链接2 题意 最大半连通图:对于图中任意两点 \(u\) 和 \(v\) 存在一条 \(u\) 到 \(v\) 的有向路径 或者 从 \(v\) 到 \(u\) 的有向路径,都有也行。 求一个图中不同的最大半连通子图的大小与数目。 思路 主思路:Tarjan,缩点,dp + 计数。
阅读全文
摘要:原题链接 题意 小 C 喜欢在画板上画画。他进行了 $ n $ 次操作,每次操作有如下三种可能: 1 k b 代表小 C 绘制了一条解析式为 $ y=kx+b $ 的直线。 2 k b 代表小 C 询问你直线 $ y=kx+b $ 与多少条被绘制的直线有恰好一个公共点。 3 k b 代表小 C 擦除
阅读全文
摘要:# *T2* 立体几何 第一次遇到这么可爱的出题人,其实这道题和二分图匹配没有半毛钱关系。一定要看到最后,看蒟蒻第一次hack标程。 # Background 小 P 是一个热爱几何的男孩子。 # Description OI 退役滚去高考的小 P 最近复习到了数学必修二第一章。他开始研究空间几何体
阅读全文
摘要:# *T3* 苹果 ## 【问题描述】 $Y$有 $n$ 个苹果,他给每个苹果定义了一个味觉值,但是$Y$获得舒适度的机制非常特别,他在吃完一些苹果后只能获得等同于它们味觉值最大公约数的舒适度,现在$Y$需要吃掉恰好一半的苹果来填饱肚子,他想知道他能获得的最大舒适度是多少。 ## 【输入格式】 第一
阅读全文
摘要:# *T4* 路径 ## 【问题描述】 $Y$有一个 $n$ 个点,$m$ 条边的无向图,规定起点 $S$ 和终点 $T$(保证 $S/T$ 联通),一个人从 $S$ 到 $T$ 的任意一条最短路都算一条关键路径,而关键路径上的点被称作关键点。假设每个单位 时间能够移动 1 的长度,你需要完成一下任
阅读全文
摘要:# *T2* 数三角形 $Luogu$ 双倍经验:[P3166](https://www.luogu.com.cn/problem/P3166) ## 【问题描述】 $Y$手上有一个$n*m$的网格,他想知道满足三个顶点都在格点上的三角形有多少个。 ## 【输入格式】 输入一行,包含两个正整数$n$
阅读全文
摘要:# *T1* 成绩 ## 【问题描述】 $Y$参加完考试,获得了$x$的成绩。现在他有$m$次对$x$进行四舍五入操作的机会,每次可以任意选一个位置进行四舍五入,请帮他最大化他的成绩。 ## 【输入格式】 第一行两个数$n$和$m$,表示$x$的长度为$n$(包括小数点),与$m$次机会。 第二行有
阅读全文
摘要:简单题,建议评红。 [原题链接](https://www.luogu.com.cn/problem/P9556) # 题意 某工厂在第 $1$ 天开工之前收到了 $n$ 笔订单,第 $i$ 笔订单可以用两个整数 $a_i$ 和 $b_i$ 描述,表示工厂需要在第 $a_i$ 天结束时交付 $b_i$
阅读全文
摘要:### 0.[BFS题单](https://www.luogu.com.cn/training/169035#problems) 还是二话不说直接上代码 ### 1.[P1443](https://www.luogu.com.cn/problem/P1443) 马的遍历 ```cpp #includ
阅读全文
摘要:### 二分查找有序序列中的x或其后缀 ```cpp #include using namespace std; int l,r,n,m,x,a[1001]; int Check(int l,int r){ while (l = x) r = mid; else l = mid + 1; } ret
阅读全文
摘要:### 0.[DFS题单](https://www.luogu.com.cn/training/167262#problems) 二话不说上代码 ### 1.[P1706](https://www.luogu.com.cn/problem/P1706) 全排列问题 ```cpp #include u
阅读全文
摘要:### 建图神码 ### 效率结棍 ```cpp #include using namespace std; int head[1000000],cnt=1,point=-1; struct T{ int u;//起始点 int v;//终点 int w;//权值 int next;//所输入的每一
阅读全文
摘要:#### [P3374](https://www.luogu.com.cn/problem/P3374) 树状数组板子题 树状数组通过位运算lowbit,将元素修改和区间求和的时间复杂度平均地降低到很小的程度。 ```cpp #include using namespace std; int a[5
阅读全文
摘要:### 输出一个二叉树基础信息的代码 原作者:[YiAnNingWan](https://www.luogu.com.cn/user/707710) ```cpp #include using namespace std; struct node{ int data; node *l,*r;/*l为
阅读全文
摘要:#### [P3865](https://www.luogu.com.cn/problem/P3865) ST表板子题 ST表是通过倍增算法快速处理RMQ问题的一个算法 ```cpp #include using namespace std; const int logn=21; const int
阅读全文
摘要:对于一个骰子,一和四为红,其他为黑,本题只需暴力分别枚举红色面朝上和黑色面朝上的情况即可。 代码如下: ```cpp #include using namespace std; int a,b,n = 6; int main() { cin >> a >> b; for(int i = 1;i <=
阅读全文
摘要:[原题链接](https://www.luogu.com.cn/problem/P9552) 比赛时有事,晚进早退,就打卡了一下 T1,估计起码有橙(怎么可能是红)。。。 这是一篇有详细过程的成长类题解。 # 题意(还原向) 设 $f(n,m)$ 表示一条直线最多能穿过 $n\times m$ 的网
阅读全文

浙公网安备 33010602011771号