round日志906 cf
CF331A1&CF331A2
不难发现一件事:对于在 \(i\) 之后能跟 \(i\) 匹配的 \(j\),最好的办法显然是使得 \(j\) 最大。则用前缀和统计整个和,并且用前缀和维护负数和,在枚举 \(i\) 统计出最小答案时在后面计算出满足最大答案的条件并输出即可。 ac records #include<bits/std ......
.NET6中使用Log4net记录日志
1、引用NuGet包 2、创建logHelper类 using log4net.Repository; using log4net; using System; using System.Collections.Generic; using System.Diagnostics; using Sys ......
超大日志文件分割工具和方法
来源:https://blog.csdn.net/sangser/article/details/123169275 1. 直接运行:MobaXterm1_CHS1.exe,如下画面: 2. 点击:Start local terminal: 切换到大文件所在目录,执行命令:split -l 6000 ......
实现简单日志管理类 + 单例模式分析优化
#pragma once #include <stdio.h> #include <iostream> #include <string> #include <vector> #include <list> #include <stdarg.h> #include <pthread.h> #incl ......
CF864F Cities Excursions
题意:给定一张有向图,询问 \(s, t\) 两点间字典序最小路径上的第 \(k\) 个结点。 首先要验证 \(s, t\) 间是否连通,所以建反图,枚举 \(1 \sim n\),跑 dfs。这部分时间复杂度 \(\mathcal O(n^2)\)。 确定了哪些点跟 \(t\) 连通后,\(s\) ......
使用RandomAccessFile监听日志文件,并实时一行行读取出来
public static void main(String[] args) { String filePath = "E:\\codes\\work\\product-parent\\logs\\alarm_log_info.log"; try { RandomAccessFile randomA ......
C#日志写入text文件
public static void SaveLog(string LogMessage, int Level, string PreLogDir = "") { int LogLevel = 0; int.TryParse(ConfigurationManager.AppSettings["Log ......
CF1919G Tree LGM
原问题可以看作是二分图博弈的模型,那么可以将博弈问题转化为最大匹配的一定性判定性问题,实际上博弈的 \(\text{dp}\) 过程直接摊开就是每次删任意一个叶子与其父亲,将父亲变为 \(1\),这个也就是最大匹配的求解过程,而是否为匹配的上端点即该点的 \(01\) 状态,那么实际上每一行的 \( ......
linux定期清理nohup日志
1、在nohup.out 所在目录创建一个clearNohup.sh文件 2、在文件里复制下面脚本 #!/bin/bash # Author: jianwang # Last Update: 2024.01.08 # Description: nohup.out 日志分割 this_path=$(c ......
CF156D
whk 考试前写题解攒 rp 有用吗 仍然是讲讲想出来的过程。 首先,我们只需要关心一个联通块中有哪些点,而不用关心图的具体形态。 然后,将每个连通块看作一个点,就变成了一个无根树计数问题,但是带权值。首先想到 prufer 序列。 prufer 序列的定义:一棵无根树中,每次将编号最小的叶子取出来 ......
CF1917F
大常熟另类做法。不用排序。 要求直径长度,则想到把直径这一条链拎出来处理。然后考虑其他边会接在哪里,发现树最优情况下一定是一个毛毛虫的形式。更进一步,所有边都挂在接近直径中点的点上。 然后再考虑这些不在直径中的,长度为 \(l\) 的边带来的限制,设直径为 \(d\),从每个点将直径切成两半,记其中 ......
CF1896D Ones and Twos 题解
来自机房大佬 FFT 的简单解法。 思路 首先有个结论:如果 \(a\) 中存在一个子串的和为 \(x\) (\(x>2\)),那么也就一定存在一个子串之和为 \(x-2\)。怎么证明?其实和为 \(x\) 的子串有 \(3\) 种情况: \(\text{1}\dots \text{1}\) 两边都 ......
CF1917D Yet Another Inversions Problem 题解
官方题解。 思路 首先可以把 \(a\) 数组分成 \(n\) 块,每块都是长为 \(k\) 的 \(q\) 数组。于是我们可以把答案拆成两部分计算:块内的贡献和块外的贡献。对于块内,\(p_i\) 都是一样的,因此可以直接消去,计算的实际上就是 \(q\) 序列的逆序对数,把这个值 \(\time ......
CF1527D MEX Tree 题解
思路 如果一条路径的 \(\text {mex} = k\),那么 \(0 \sim k-1\) 这些点一定在路径中出现过,并且一定在一条链上。如果不在一条链上,那么就不满足简单路径这一条件了。因此我们在从小到大加点的过程中如果发现一个点不在已求出的链上,那么比这个点编号大的 \(k\) 答案一定都 ......
CF1536F Omkar and Akmar 题解
思路 首先最后的局面在两两字母间一定不会多于 \(1\) 个空格。考虑反证,假设有两个空格,那么有以下两种情况:\(\text{A}\_\_ \text{B}\),\(\text{A}\_\_ \text{A}\),也就是两边的字母不同,相同。对于第一种,在任意一个空格都可以填一个与他相邻字符不同的 ......
CF1547C题解
思路 题意这里就不讲了,直接进入正题。 贪心。 首先我们知道要想尽可能的让每一次操作都合法就得使 \(k\) 最大化,那么要使 \(k\) 最大就得尽可能的选择 \(0\) 操作,所以贪心策略就出来了:优先选择 \(0\) 操作,\(A,B\) 序列那个有 \(0\) 就选哪个合并。如果两个序列当前 ......
CF1673A题解
题目大意 A(Alice)和B (Bob)有一个字符串 \(\texttt s\)(所有字符都是小写字母),他们在玩一个游戏:对于这个字符串 \(\texttt s\),A可以删除其中长度为偶数的一串子串,B则可以删除其中长度为奇数的字串(也可以选择不删)。每次删除都能获得相应的分数,即将删除字串中 ......
CF1863E Speedrun
CF1863E 参考这篇博客,本题解作为我的学习笔记。 思路 首先观察到提上说的依赖关系,容易联想到建出一张有向无环图。因为 \(a_i\) 要比 \(b_i\) 先完成,所以从 \(a_i\) 向 \(b_i\) 连一条边。而任务必须从入度为零的点开始依次往下做,因此想到拓扑排序(但题目给的就是拓 ......
vp Educational Codeforces Round 160 (Rated for Div. 2)
ABC很顺畅,没有卡住然后到最后D都做不出来 D我感觉是一个类似计数dp的东西但是我找不到统计的规律但是可以得到一些性质:一个数字如果想被删掉,那它直到它左边的比它小的数字为止所有数字都要先删掉,它才能被删掉 发现自己如果不去想DP,会去往贪心的方向想,这题就是那种贪心没法完全被判断掉的因为贪心也有 ......
CF1919E Counting Prefixes 题解
题目链接:https://codeforces.com/problemset/problem/1919/E 题意 输入一个单调非减序列 \(p\),求问有多少个序列 \(a\),使得: \(|a_i| = 1\); 令 \(s_i = \sum_{j = 1}^i a_j\),则 \(s\) 排序后 ......
CF466D Increase Sequence
题意 给定一个序列 \(a\),每次操作可以将区间 \([l, r]\) 中的所有元素加一,要求最后使所有元素等于 \(h\)。 要求: 任意两个区间的左右端点互不重合(\(l1 \neq l2\) 且 \(r1 \neq r2\)); 对 \(10^9 + 7\) 取模。 思路 首先,可以考虑预处 ......
CF1523C Compression and Expansion
前言 多测不清零,亲人两行泪。 题意 对于一个空的数字串,有两种操作: 删除末尾的 \(n\) 个 \((n \ge 0)\) 元素,并将修改后数字串的最后一个元素加一; 在数字串末尾添加一个数字 \(1\)。 输入 \(n\) 个元素,表示第 \(n\) 次操作后数字串末尾的元素。 思路 首先考虑 ......
CF1912L LOL Lovers
题目传送门 题目大意 给定一个长度为 \(n\) 的、只有 O 和 L 组成的字符串,求出一个 \(i\),使得 \(i\) 左侧和右侧 O、L 的数量互不相等且每侧至少有一个 O 和一个 L。 思路 注意 \(n\) 的范围是 \(2 \le n \le 200\),数据范围很小,暴力的时间复杂度 ......
CF1144D Equalize Them All
第一次看的时候确实被题面吓了一跳,没有好好思考就放弃了。其实题目还是蛮简单的。 题意 对于两种操作,我们可以进行分类讨论。 当 \(a_i > a_j\) 时 操作一:将 \(a_i\) 变为了 \(2 \times a_i - a_j\); 操作二:将 \(a_i\) 变为了 \(a_j\)。 当 ......
昨天的cf总结以及接下来的提升计划
最近两次cf真的是给我打醒了 有一种前面上分都是靠运气的感觉 虽然知道确实不是靠运气。。 但是最近两次的大失败确实是非常值得反思的,也需要我直面和反思,不然没有进步 就结果来说,是非常非常离谱的失败,两次掉了我几乎300分 从过程上看,有什么问题?首先,是D题总是写不出来,C题也是经常非常勉强,从排 ......
CF1017G The Tree
题意 给定一棵树和 \(3\) 个操作。 如果点 \(x\) 是白色,将她染红,否则对她地儿子做这个操作。 将点 \(x\) 子树内所有点染白。 询问 \(x\) 的颜色。 Sol 考虑对询问分块。 不难想到将当前块内的点建一棵虚树,然后再重构。 暴力建虚树即可。 Code #include <io ......
[Codeforces] CF1553D Backspace
CF1553D Backspace 说实话这题不配绿题 题目传送门 题面 给你两个字符串 \(S,T\) ,问你能否通过将 \(S\) 中的若干个数换成 Backspace 来使其变成 \(T\) 。Backspace 能删去前一个输入的字符。 思路 很明显,如果将一个字符换成Backspace,那 ......
[Codeforces] CF1551C Interesting Story
CF1551C Interesting Story 题目传送门 题意 给定 \(n\) 个仅由 \(\texttt{a,b,c,d,e}\) 组成的单词 (\(n \le 2\times 10^5\)),从其中选出尽可能多的单词,使得存在某个字母在这些单词中出现的次数比其他所有字母的出现次数之和还要 ......
CF1801F Another n-dimensional chocolate bar
更好的阅读体验 CF1801F Another n-dimensional chocolate bar 高妙的数论分块优化 DP。 第一步设计状态就有很大问题,如果直接设 \(f_{i,j}\) 表示前 \(i\) 个数成绩为 \(j\) 那就死了。这完全没有利用到整除的性质。正确做法是设 \(f_ ......