<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[czn的博客]]></title><description><![CDATA[欢迎来到czn的博客]]></description><link>https://blog.csdn.net/qq_35152804</link><language>zh-cn</language><generator>https://blog.csdn.net/</generator><copyright><![CDATA[Copyright &copy; qq_35152804]]></copyright><item><title><![CDATA[可视化数据结构网站]]></title><link>https://blog.csdn.net/qq_35152804/article/details/128944470</link><guid>https://blog.csdn.net/qq_35152804/article/details/128944470</guid><author>qq_35152804</author><pubDate>Wed, 08 Feb 2023 22:16:23 +0800</pubDate><description><![CDATA[1]]></description><category></category></item><item><title><![CDATA[Kivy打包apk教程（含kivydev64)2022最新可用]]></title><link>https://blog.csdn.net/qq_35152804/article/details/126271039</link><guid>https://blog.csdn.net/qq_35152804/article/details/126271039</guid><author>qq_35152804</author><pubDate>Fri, 12 Aug 2022 15:53:27 +0800</pubDate><description><![CDATA[Kivy是一个非常便捷的Python开发应用的开源框架，但是Kivy导出apk的方法在网络中繁杂，可用性低，作者通过网络学习和亲身实践，对kivy打包apk进行一个总结。]]></description><category></category></item><item><title><![CDATA[CSS学习笔记]]></title><link>https://blog.csdn.net/qq_35152804/article/details/123587226</link><guid>https://blog.csdn.net/qq_35152804/article/details/123587226</guid><author>qq_35152804</author><pubDate>Sat, 19 Mar 2022 11:58:27 +0800</pubDate><description><![CDATA[基础语法
.class
#id
* all
/*注释*/

大小和位置
width:
height:
max-width:
max-height:
left:
top:
right:
bottom:
position:
/* static无视left等参数 relative是听从left等参数  
   fixed始终保持不动    absolute根据上一层定位
   sticky黏性*/
z-index:/*优先级*/

颜色color
rgba(0, 128, 0, 0.3);/*RGB颜色*/
op]]></description><category></category></item><item><title><![CDATA[Python小工具]]></title><link>https://blog.csdn.net/qq_35152804/article/details/123587178</link><guid>https://blog.csdn.net/qq_35152804/article/details/123587178</guid><author>qq_35152804</author><pubDate>Fri, 18 Mar 2022 23:45:07 +0800</pubDate><description><![CDATA[四舍五入round(数字,位数)

]]></description><category></category></item><item><title><![CDATA[JAVA FX学习笔记]]></title><link>https://blog.csdn.net/qq_35152804/article/details/121452709</link><guid>https://blog.csdn.net/qq_35152804/article/details/121452709</guid><author>qq_35152804</author><pubDate>Sun, 21 Nov 2021 13:47:13 +0800</pubDate><description><![CDATA[Scene
键盘鼠标事件
库
import javafx.input.MouseEvent;
import javafx.input.KeyEvent;
添加监听
scene.setOnMousePressed();
scene.setOnMouseDrag();
scene.setOnKeyPressed();
监听事件自定义
public void MouseClickListener(MouseEvent event)
{
	int x,y;
	x=event.getX();
	y=event.get]]></description><category></category></item><item><title><![CDATA[判负环]]></title><link>https://blog.csdn.net/qq_35152804/article/details/103079367</link><guid>https://blog.csdn.net/qq_35152804/article/details/103079367</guid><author>qq_35152804</author><pubDate>Fri, 15 Nov 2019 09:36:35 +0800</pubDate><description><![CDATA[题目传送门
以上题面与正常判负环有所差别，并且下方代码需要修改一部分内容方可通过。
代码
#include&lt;iostream&gt;
#include&lt;cstdio&gt;
#include&lt;cstring&gt;
#include&lt;algorithm&gt;
#include&lt;queue&gt;
using namespace std;
long long head...]]></description><category></category></item><item><title><![CDATA[二维树状数组]]></title><link>https://blog.csdn.net/qq_35152804/article/details/103058411</link><guid>https://blog.csdn.net/qq_35152804/article/details/103058411</guid><author>qq_35152804</author><pubDate>Wed, 13 Nov 2019 22:02:14 +0800</pubDate><description><![CDATA[int a[2000][2000],n;
int lowbit(int x)
{
	return x&amp;(-x);
}
void change(int x,int y,int c)
{
	while(x&lt;=n)
	{
		int t=y;
		while(t&lt;=n)
		{
			a[x][t]+=c;
			t+=lowbit(t);
		}
		x+=lowbit(x);
	...]]></description><category></category></item><item><title><![CDATA[bzoj1725 [Usaco2006 Nov]Corn Fields牧场的安排]]></title><link>https://blog.csdn.net/qq_35152804/article/details/103046855</link><guid>https://blog.csdn.net/qq_35152804/article/details/103046855</guid><author>qq_35152804</author><pubDate>Wed, 13 Nov 2019 12:31:30 +0800</pubDate><description><![CDATA[添加链接描述
解题方法
状压dp，先dfs预处理出状态，然后一行一行地转移
代码
#include&lt;iostream&gt;
#include&lt;cstdio&gt;
#include&lt;cstring&gt;
#include&lt;algorithm&gt;
using namespace std;
long long s[1&lt;&lt;13];
long long tot=...]]></description><category></category></item><item><title><![CDATA[康托展开]]></title><link>https://blog.csdn.net/qq_35152804/article/details/103017000</link><guid>https://blog.csdn.net/qq_35152804/article/details/103017000</guid><author>qq_35152804</author><pubDate>Mon, 11 Nov 2019 20:26:18 +0800</pubDate><description><![CDATA[康托展开
简介
康托展开是求1∼N1\sim N1∼N的一个给定全排列在所有1∼N1\sim N1∼N全排列中的排名的一种算法。
算法介绍
对于一个全排列我们该如何计算排名，我们可以一位一位的思考，如果我们发现这位为之后一共有kkk个数待选，我们发现这个位置上一定经历过k×(n−i)!k\times (n-i)!k×(n−i)!，那么我们只需要一位一位的走，找出这个kkk然后累加起来就可以了。
对...]]></description><category></category></item><item><title><![CDATA[NOIP2018 货币系统]]></title><link>https://blog.csdn.net/qq_35152804/article/details/102979496</link><guid>https://blog.csdn.net/qq_35152804/article/details/102979496</guid><author>qq_35152804</author><pubDate>Fri, 08 Nov 2019 20:07:59 +0800</pubDate><description><![CDATA[解题方法
我们发现这个新的系统的货币一定是都属于原来的集合内的，所有我们只需要判断原来的数能不能被其他的数替代。
然后我们自然就有一种想法就是从小到大找。这个时候如果这个数无法被替代，那么这个数一定会被选中，如果能被替代就不要了。而从小到大正好可以避免漏选的情况，我们发现aia_iai​都比较小，我们就可以暴力修改一个数能不能从已知的可以转移的数转移来，然后每次加入这个不可以替代的数的时候更新一下...]]></description><category></category></item><item><title><![CDATA[CF1245C Constanze's Machine]]></title><link>https://blog.csdn.net/qq_35152804/article/details/102978360</link><guid>https://blog.csdn.net/qq_35152804/article/details/102978360</guid><author>qq_35152804</author><pubDate>Fri, 08 Nov 2019 18:23:18 +0800</pubDate><description><![CDATA[题目传送门
题面
给你一个字符串，其中两个uuu是可以变成www，两个nnn是可以变成mmm，当然也可以不会，问有可能有多少的字符串。
解题方法
首先我们要先判断一下m和wm\text{和}wm和w是否出现过，如果出现过那么就直接输出000结束，如果不是我们就开始dpdpdp，我们发现如果这两个字符可以合并，那么dp[i]=d[i−1]+d[i−2]dp[i]=d[i-1]+d[i-2]dp[i]...]]></description><category></category></item><item><title><![CDATA[luogu2112 鸿雁传书]]></title><link>https://blog.csdn.net/qq_35152804/article/details/102975968</link><guid>https://blog.csdn.net/qq_35152804/article/details/102975968</guid><author>qq_35152804</author><pubDate>Fri, 08 Nov 2019 16:45:38 +0800</pubDate><description><![CDATA[题目传送门
题意
给你nnn个单词，在保证顺序不变的情况下让你把他们分成kkk行，使得每行字母数的方差最小，求最小方差。
解题方法
我们发现这个不能改变顺序的，而且我们也发现平均值是个定值，不会随我们的安排而改变，所以我们就可以安全的递推了，我们定义dp[i][j]dp[i][j]dp[i][j]表示前iii个单词共安排jjj行的最小方差，我们发现就这个递推式就变成了：dp[i][j]=min(d...]]></description><category></category></item><item><title><![CDATA[CF1256E Yet Another Division Into Teams]]></title><link>https://blog.csdn.net/qq_35152804/article/details/102964002</link><guid>https://blog.csdn.net/qq_35152804/article/details/102964002</guid><author>qq_35152804</author><pubDate>Thu, 07 Nov 2019 22:13:46 +0800</pubDate><description><![CDATA[題目傳送門
題面
你有nnn個選手，每個選手都有一個勢力值，你要把他們分成多個小組，每個小組最少要有3個人，每個小組的多樣性值為勢力值最大值減去最小值，問讓你提出一種分組方式使得多樣性總和最小。
解題方法
我們發現組分的越多，答案一定越小，所以說我們發現每個小組的人數一定是3−53-53−5人，然后我們就可以通過dpdpdp求答案了，我們能夠發現的遞推式如下：
dp[i+3]=min(dp[i+3...]]></description><category></category></item><item><title><![CDATA[[NOI2001]炮兵阵地]]></title><link>https://blog.csdn.net/qq_35152804/article/details/102943356</link><guid>https://blog.csdn.net/qq_35152804/article/details/102943356</guid><author>qq_35152804</author><pubDate>Wed, 06 Nov 2019 21:15:35 +0800</pubDate><description><![CDATA[题目传送门
题意
在n×nn\times nn×n的棋盘放若干个炮兵，有的位置不能放，每一个炮兵的攻击范围如下：

你需要放置最多的炮兵。问最多能放多少。
解题方法
首先对????状压。
设dp[i][s1][s2]dp[i][s1][s2]dp[i][s1][s2]表示到了第i行，这一行放的状态是s1，上一行放的状态是s2的方案数。
然后枚举下一行放的情况，判断是否合法进行转移。
复杂度是O(n×8m...]]></description><category></category></item><item><title><![CDATA[[HAOI2009]逆序对数列]]></title><link>https://blog.csdn.net/qq_35152804/article/details/102940246</link><guid>https://blog.csdn.net/qq_35152804/article/details/102940246</guid><author>qq_35152804</author><pubDate>Wed, 06 Nov 2019 19:23:44 +0800</pubDate><description><![CDATA[题目传送门
题意
求长度为nnn的有kkk个逆序对数由1..n1..n1..n组成的排列有多少
解题方法
我们考虑一个一个的往里面加数，我们发现每次加进去的那个数一定是最大的数，并且在我们决定放的位置时他一定会产生后面的数的数量个逆序对，然后我们就可以尝试递推了，因为你每次加进去的这个数产生的贡献最大是i−1i-1i−1的，然后我们就可以递推了:dp[i][j]=∑k=1jdp[i−1][k]dp...]]></description><category></category></item><item><title><![CDATA[[SCOI2005]互不侵犯]]></title><link>https://blog.csdn.net/qq_35152804/article/details/102939654</link><guid>https://blog.csdn.net/qq_35152804/article/details/102939654</guid><author>qq_35152804</author><pubDate>Wed, 06 Nov 2019 17:42:16 +0800</pubDate><description><![CDATA[题目传送门
题面
你有一个n×nn\times nn×n的棋盘，你有kkk个国王，使他们互不攻击，共有多少种摆放方案。国王能攻击到它上下左右，以及左上左下右上右下八个方向上附近的各一个格子，共8个格子。
解题方法
状压dp入门题目，使用二进制压缩每个位置上的国王摆放情况，然后转移dp[i][j][k]dp[i][j][k]dp[i][j][k]，表示在第iii行放了kkk个国王，其中第iii行状态...]]></description><category></category></item><item><title><![CDATA[CF1209D Cow and Snacks]]></title><link>https://blog.csdn.net/qq_35152804/article/details/102917711</link><guid>https://blog.csdn.net/qq_35152804/article/details/102917711</guid><author>qq_35152804</author><pubDate>Tue, 05 Nov 2019 15:58:05 +0800</pubDate><description><![CDATA[题目传送门
题意
有nnn个菜和kkk个人，每个人都有喜欢的两种菜，他会吃掉自己喜欢的菜，如果没有他喜欢吃的菜，他就会沮丧，让你安排一种吃菜顺序，让沮丧的人变少。
解题方法
先连边，我们发现不连通的没有影响，我们考虑连通块大小大于 111 的，如果这里里面包含 nnn 盘菜，我们可以发现我们可以通过安排顺序能让n−1n-1n−1个人满足，因为除了第一个人吃两盘其他的都吃一盘，然后用并查集维护一下，...]]></description><category></category></item><item><title><![CDATA[[NOIP2013]货车运输]]></title><link>https://blog.csdn.net/qq_35152804/article/details/102901924</link><guid>https://blog.csdn.net/qq_35152804/article/details/102901924</guid><author>qq_35152804</author><pubDate>Mon, 04 Nov 2019 17:48:39 +0800</pubDate><description><![CDATA[题目传送门
题意
给你一张带权无向图，每次给你两个点，然你选出一个路径使得这条路径上的边权最小值最大，输出这个最小值。
解题方法
我们发现这个边一定实在最大生成树上，我们就只需要建一颗最大生成树，然后倍增lca就可以了。
代码
#include&lt;iostream&gt;
#include&lt;cstdio&gt;
#include&lt;cstring&gt;
#include&lt;al...]]></description><category></category></item><item><title><![CDATA[最近公共祖先（LCA）]]></title><link>https://blog.csdn.net/qq_35152804/article/details/102899047</link><guid>https://blog.csdn.net/qq_35152804/article/details/102899047</guid><author>qq_35152804</author><pubDate>Mon, 04 Nov 2019 16:40:36 +0800</pubDate><description><![CDATA[LCA
lca在处理一个树上问题非常的常用，接下来就是利用倍增来求LCA的介绍。
首先我们发现在往上跳的过程中，不需要一步一步的走，我们可以直接大步子往上跳直接跳到LCA上，这是我们就想到使用倍增来求LCA，我们先预处理出来大步跳到的点，然后我们就要二进制那样拆解的向上跳，但是我们要从大数开始跳。下面为代码。
#include&lt;iostream&gt;
#include&lt;cstdio&...]]></description><category></category></item><item><title><![CDATA[[NOIP2009]最优贸易]]></title><link>https://blog.csdn.net/qq_35152804/article/details/102886414</link><guid>https://blog.csdn.net/qq_35152804/article/details/102886414</guid><author>qq_35152804</author><pubDate>Sun, 03 Nov 2019 20:25:48 +0800</pubDate><description><![CDATA[题目传送门
题意
给你一张nnn个点mmm条边的图，告诉你一些边是否为双向边，让你找到一种路径1→u→v→n1	\rightarrow u	\rightarrow v	\rightarrow n1→u→v→n，使得av−aua_v-a_uav​−au​最大。
解题方法
我们发现我们只对aua_uau​和ava_vav​感兴趣，但是我们需要找到三条路径，使得111号点能够到达 uuu,uuu能到达v...]]></description><category></category></item></channel></rss>