题解 序列p2023 2009

ICPC2022Xian B Cells Coloring 题解

Link [ICPC2022Xian B Cells Coloring](ICPC2022Xian B Cells Coloring) Question 感觉这种解法会被Hack,欢迎讨论 给出一个 \(n\times m\) 的网格,有些格子堵住了,有些格子空着,要选 \(k+1\) 种颜色给空着 ......
题解 Coloring Cells ICPC 2022

Python的json序列化模块

一、json Json模块提供了四个功能:dumps、dump、loads、load 1、前景 什么叫序列化——将原本的字典、列表等内容转换成一个字符串的过程就叫做序列化。 序列化的目的 以某种存储形式使自定义对象持久化; 将对象从一个地方传递到另一个地方。 使程序更具维护性 在Python中,能够 ......
序列 模块 Python json

Emiya今天的饭 题解

题目 考虑条件主要食材最大的不超过总菜数的一半,不好处理,但存在主要食材最大的超过总菜数的一半是好处理的,容斥即可。 首先计算所有情况,由于题目要求每个烹饪方式最多使用一次,很明显可以记 \(g_i\) 表示前 \(i\) 种烹饪方式的方案数。 \[g_i = g_{i-1}+g_{i-1} \ti ......
题解 Emiya

CF1071题解

CF1071 Codeforces Round 517 (Div. 1, based on Technocup 2019 Elimination Round 2) CF1071A link CF1071A题意 现在你有两天的时间备考NOI,两天各有 \(a\) 小时,\(b\) 小时(时空扭曲)。 ......
题解 1071 CF

【luogu题解】U388218 数数

数数 题目描述 给定 n 个不超过 1.5×10⁹ 的自然数。求这些自然数各自出现的次数,并按照自然数从小到大的顺序输出统计结果。 输入格式 输入的第 1 行是整数 n ,表示自然数的个数。 第 2 行到 第 n+1 行每行一个自然数。 输出格式 输出文件包含 m 行( m 为 n 个自然数中不相同 ......
题解 U388218 388218 luogu

T403510 平面划分(Hard) 题解

Link T403510 平面划分(Hard) Question 平面上由 \(n\) 条这样的折线所界定区域的最大的个数 \(Z_n\) 是多少。 Solution 先思考一个简单的问题 平面上 \(n\) 条直线所界定的区域最大个数 \(L_n\) 是多少? 我们考虑假设已经有\(n-1\) 条 ......
题解 平面 T403510 403510 Hard

[ARC121F] Logical Operations on Tree 题解

题目链接 点击打开链接 题目解法 比较好的题 首先要发现一个性质是:先删 AND 边,再删 OR 边最优 小证一下:分类讨论 AND 边两端的数字情况 \(0 \& 0\) 左右两端虽然可能可以把 \(1\) OR 过来,但这种情况先做 \(\&\),也一定可以 OR 得到 \(1\) \(0 \& ......
题解 Operations Logical 121F Tree

【题解】CodeForces 1902F Trees and XOR Queries Again

传送门:https://codeforces.com/contest/1902/problem/F 数据结构题,这里讲两种思路。 $ST$ 表思路: 判定“从若干个数中能否取出其中一些,使得异或和为 $x$”的问题,第一时间想到线性基,本题要做的显然就是快速求出询问路径上所有数的线性基。两组数的线性 ......
题解 CodeForces Queries 1902F Again

[ARC106E] Medals 题解

题目链接 题目链接 题目解法 感觉不难啊,怎么想到网络流和 \(hall\) 定理后面就屁都没想到呢 首先一眼网络流 先二分答案 考虑一个朴素的建图方法是:把每个人拆成 \(k\) 个点,然后往在的天连边,跑最大流,满流即合法 可以发现,跑网络流对这道题还说没有必要,因为只要判是否有完美匹配 不难想 ......
题解 Medals 106E ARC 106

CF1031题解

CF1031 Codeforces Round 517 (Div. 1, based on Technocup 2019 Elimination Round 2) CF1031A link CF1031A题意 现在你有两天的时间备考NOI,两天各有 \(a\) 小时,\(b\) 小时(时空扭曲)。 ......
题解 1031 CF

最长上升子序列

1.信息学奥赛一本通(C++版)在线评测系统 (ssoier.cn) 1283登山 根据题意,该题的图形为单峰的序列,从左至右先递增再递减,我们可以依次枚举峰值 然后再分别计算左右两个子序列的长度 1 #include<bits/stdc++.h> 2 using namespace std; 3 ......
序列

[CF83E] Two Subsequences 题解

[CF83E] Two Subsequences 题解 思路 定义 \(overlap(a, b)\) 为字符串 \(a\) 的后缀与 \(b\) 的前缀的最大相等的长度,有 \(|f(a, b)| = |a| + |b| - overlap(a, b)\),下文称匹配为相邻两串的 \(overla ......
题解 Subsequences 83E Two CF

CF1900B题解

原题 思路 略微思考不难得到,三个数字的数量之差的奇偶性是不会变的。因为一个数的数量减少了 $1$,另一个数无论是增加 $1$ 或是减少 $1$,两者的差要么不变,要么增加 / 减少 $2$,对奇偶性无影响。 同时,如果另外两个数的数量变为 $0$,它们数目的差一定是 $0$。那么,我们只需要判断另 ......
题解 1900B 1900 CF

【题解】CodeForces 686E Optimal Point

传送门:https://codeforces.com/contest/686/problem/E 前言:本题解来源于作者某天晚上和一位朋友的发电内容(没错,这个作者直接把自己和朋友发电时发的话用markdown排了一下,传上来了),当时本来就比较口语化,加上作者的做法又实在太过离谱,因此可能语言表述 ......
题解 CodeForces Optimal Point 686E

【题解】LibreOJ #3051「十二省联考 2019」皮配

传送门:https://loj.ac/p/3051 首先,对于这样“少部分个体有特殊要求”的题目,我们先考虑,如果没有任何个体有特殊要求怎么做,然后再考虑怎么加上特殊要求; 对于这道题,如果 $k=0$,即没有学校有不喜欢的导师,那么,设总人数为 $al$,城市 $i$ 的人数和为 $cit_i$、 ......
题解 LibreOJ 3051 2019

P8773 [蓝桥杯 2022 省 A] 选数异或 题解

P8773 [蓝桥杯 2022 省 A] 选数异或 题解 题目链接 P8773 [蓝桥杯 2022 省 A] 选数异或 简要思路 题目让我们查询是否有两个数 \(a,b\) 满足 \(a \oplus b = x\),根据异或的性质,我们可以将上式转换为 \(b = a \oplus x\),因此对 ......
蓝桥 题解 P8773 8773 2022

fastjson反序列化

前言 fastjson是阿里巴巴旗下的一个Java库,用于Java对象和JSON字符串之间的转换。 这个库从2017-2022年,陆陆续续爆出了20多个反序列化RCE。 官方采用黑名单的方式修复漏洞,这导致出现一系列的bypass= = 序列化分析 package Pojo; import java ......
序列 fastjson

Shiro550 反序列化

参考链接 https://www.bilibili.com/video/BV1iF411b7bD 环境搭建 搭环境看的这位师傅的,有图有步骤,爱了。 https://fireline.fun/2021/05/21/Java%E5%8F%8D%E5%BA%8F%E5%88%97%E5%8C%96%E6 ......
序列 Shiro 550

Java二次反序列化

前言 题目hook resolveClass存在入口类黑名单,就可以用二次反序列化绕过,例如巅峰极客的babyurl。 本质是,A类的a方法,内部可以实现反序列化,并且要反序列化的对象我们可控;在B入口类被禁用的情况下, 通过把要反序列化的恶意对象b放入A类,用没被禁用的入口类C的readObjec ......
序列 Java

java反序列化 ROME链

环境搭建 jdk8u181 <dependencies> <dependency> <groupId>rome</groupId> <artifactId>rome</artifactId> <version>1.0</version> </dependency> </dependencies> 利 ......
序列 java ROME

Java反序列化 CC4链

参考链接 https://github.com/frohoff/ysoserial/blob/master/src/main/java/ysoserial/payloads/CommonsCollections4.java https://www.bilibili.com/video/BV1NQ4y ......
序列 Java CC4 CC

Java反序列化 CC2链

参考链接 https://github.com/frohoff/ysoserial/blob/master/src/main/java/ysoserial/payloads/CommonsCollections2.java 环境搭建 CommonCollections4 jdk8u65 利用链分析 ......
序列 Java CC2 CC

Java反序列化 CC5链

参考链接 https://github.com/frohoff/ysoserial/blob/master/src/main/java/ysoserial/payloads/CommonsCollections5.java 环境搭建 Commons.Collections 3.2.1 jdk8u65 ......
序列 Java CC5 CC

Java反序列化 CC7链

参考链接 https://blog.csdn.net/qq_35733751/article/details/119862728 https://github.com/frohoff/ysoserial/blob/master/src/main/java/ysoserial/payloads/Com ......
序列 Java CC7 CC

UVA1395 Slim Span 题解

Link UVA1395 Slim Span Question 求所有生成树中最大边权与最小边权差最小的,输出他们的差值 Solution 因为 \(n \le 100\) 非常小,先把边从小到大排序,那么生成树的边肯定是排序后上的边连续的一块 所以,可以枚举连续一块的起点 \(L\),\(R\) ......
题解 1395 Slim Span UVA

UVA753 A Plug for UNIX 题解

Link UVA753 A Plug for UNIX Question 有 \(n\) 个插座,\(m\) 个设备和 \(k\) 种转换器,每种转换器有无限多个。转换器可以插着转换器用,每个插座或插头的类型可能不同,求最少剩多少个不匹配的设备 Sulotion 先考虑转换器连用的情况,用边表 \( ......
题解 Plug UNIX UVA 753

java 序列话注解 @Transient

java 序列话注解 @Transient Java 序列化注解及其使用 简介 在 Java 程序中,对象的序列化是指将对象转换为字节流的过程,以便在网络上传输或保存到文件中。而反序列化则是将字节流重新转换为对象。 Java 提供了 java.io.Serializable 接口,用于标识可序列化的 ......
注解 序列 Transient java

java中的关键字transient,将不需要序列化的属性前添加关键字transient,序列化对象的时候,这个属性就不会被序列化

java中的关键字transient,将不需要序列化的属性前添加关键字transient,序列化对象的时候,这个属性就不会被序列化 这个关键字的作用其实我在写java的序列化机制中曾经写过,不过那时候只是简单地认识,只要其简单的用法,没有深入的去分析。这篇文章就是去深入分析一下transient关键 ......
序列 transient 属性 关键字 关键

CF1850E Cardboard for Pictures 题解

题意: 思路: 问题转化为:求解满足 $ \sum_{i = 1}^n (a_i + 2w)^2 = c $ 的 $ w $ 。 观察,等式左侧 $ \sum_{i = 1}^n (a_i + 2w)^2 $ 随 $ w $ 的增大而增大,而 $ c $ 不变,因此考虑二分 $ w $ 的值。 ......
题解 Cardboard Pictures 1850E 1850

CF1809D Binary String Sorting 题解

题意: 思路: 贪心: 单调不降的 $ 01 $ 字符串,一定是一串连续的 $ 0 $ 再加上一串连续的 $ 1 $ 。由于每次操作的代价很大,所以需要在操作次数尽可能少的情况下,尽可能多地使用交换操作。 由于 $ 1 $ 次交换操作,只能减少 $ 1 $ 个逆序对,当存在多个逆序对时,优先通过删除 ......
题解 Sorting Binary String 1809D