<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[JXUFE_ACMer的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/JXUFE_ACMer</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; JXUFE_ACMer]]></copyright><item><title><![CDATA[江西财经大学2020天梯赛周练2题解]]></title><link>https://blog.youkuaiyun.com/JXUFE_ACMer/article/details/109966835</link><guid>https://blog.youkuaiyun.com/JXUFE_ACMer/article/details/109966835</guid><author>JXUFE_ACMer</author><pubDate>Sun, 22 Nov 2020 22:45:39 +0800</pubDate><description><![CDATA[天梯赛周练2题解
7-1万圣节发糖
这题就是要求满足ax+by+cz=n ax + by + cz = nax+by+cz=n 的最大化x+y+z x + y + zx+y+z
第一种解法就是两个循环。遍历x和y，直到(n−ax−by)遍历x和y，直到 (n - ax - by) % c == 0遍历x和y，直到(n−ax−by)
第二种解法是dp
dp[i]是当axi+byi+czi==i时，最大值化的xi+yi+zidp[i]是当ax_i+by_i+cz_i == i时，最大值化的x_i + y_i +]]></description><category></category></item><item><title><![CDATA[江西财经大学2020级招新测试题解]]></title><link>https://blog.youkuaiyun.com/JXUFE_ACMer/article/details/109898783</link><guid>https://blog.youkuaiyun.com/JXUFE_ACMer/article/details/109898783</guid><author>JXUFE_ACMer</author><pubDate>Sat, 21 Nov 2020 17:01:39 +0800</pubDate><description><![CDATA[2020级ACM协会招新测试题解
第一题：圣诞节买苹果
题意：就是求∑i=1N⌊n/i⌋\sum_{i=1}^N\lfloor n/i \rfloori=1∑N​⌊n/i⌋
所以可以直接用一个循环来求
long long ans = 0;
for(int i = 1;i &lt;= n;i++){
	ans += n / i;
}

第二题：万圣节买糖
题意：和第一题一样，但是数据大小是1e13，直接用循环来做的话肯定会超时(时间限制是1000ms，如果运算次数超过1e7基本就会超时)。
所以这题应该用更简]]></description><category></category></item><item><title><![CDATA[第三周上机题解]]></title><link>https://blog.youkuaiyun.com/JXUFE_ACMer/article/details/103445691</link><guid>https://blog.youkuaiyun.com/JXUFE_ACMer/article/details/103445691</guid><author>JXUFE_ACMer</author><pubDate>Sun, 08 Dec 2019 17:20:02 +0800</pubDate><description><![CDATA[第三周上机题解

题目解法不唯一，此处仅给出一种参考解法（A~E、H题难度较大，此处仅给出参考链接，有兴趣可自行百度学习）ps.正式比赛时建议先做简单题尽量得分而不是优先死磕难题。

A Cotree

树形DP，参考链接：

Cotree【树DP】

B Math

此题需要较好数学功底，参考链接：

Math

C Trap

容斥原理+组合计数，参考链接：

Trap

D Wave

此题...]]></description><category></category></item><item><title><![CDATA[P315 GCD等于XOR UVa12176  “不难发现”的解释 以及完整推导过程]]></title><link>https://blog.youkuaiyun.com/JXUFE_ACMer/article/details/81987374</link><guid>https://blog.youkuaiyun.com/JXUFE_ACMer/article/details/81987374</guid><author>JXUFE_ACMer</author><pubDate>Thu, 23 Aug 2018 20:30:09 +0800</pubDate><description><![CDATA[1. a-b&amp;lt;=a xor b,

对于在同一个数位相同的二进制位值，xor和减法的效果都是一样的。

对于在同一个数位不同的二进制位值，xor恒等于1，而减法可能向高位借1.

2.gcd(a,b)&amp;lt;=a-b (假设a&amp;gt;b)

因为gcd(a,b)=gcd(b,a%b)

设a=qb+r  r=a%b=a-qb

gcd(b,a%b)=gcd(b,a-qb)

此时最大公因数不...]]></description><category></category></item><item><title><![CDATA[第十章例题 Disgruntled Judge UVA - 12169]]></title><link>https://blog.youkuaiyun.com/JXUFE_ACMer/article/details/81950507</link><guid>https://blog.youkuaiyun.com/JXUFE_ACMer/article/details/81950507</guid><author>JXUFE_ACMer</author><pubDate>Wed, 22 Aug 2018 20:28:49 +0800</pubDate><description><![CDATA[
/*SE:wn------王宁*/
/*一开始看到a b的范围是10000的时候，我是没有去想暴力枚举的
网络上说oj平台支持1秒钟做一亿次的加法运算
在这里a b循环已经有一亿次了——最坏情况
我并不清楚它的数据如何
但是能使前几项成立的a b应该很少，所以大部分会被刷下来
越往后，不是真正能使成立的数a b想要通过的可能性应当呈现几何度下降
所以判断次数还是蛮少的
这样子跑下来是330ms ...]]></description><category></category></item><item><title><![CDATA[第十章例题  A - Colossal Fibonacci Numbers! UVA - 11582]]></title><link>https://blog.youkuaiyun.com/JXUFE_ACMer/article/details/81949395</link><guid>https://blog.youkuaiyun.com/JXUFE_ACMer/article/details/81949395</guid><author>JXUFE_ACMer</author><pubDate>Wed, 22 Aug 2018 19:08:34 +0800</pubDate><description><![CDATA[

/*
SE：wn------王宁
1.f数组的值显然是不重复的，因为是递增数列
2.但是它每个元素都%n,必定是有重复的规律，否则里面a^b那么大怎么找对应的？
刘汝佳大神说因为余数最多n中，所以最多n*n项就会出现重复我不理解
3.所以找出重复的次数，到时候里面的 a^b 取余再到存放的数组里面去找就行了
4.关于a和b我一开始以为他们太大存不下，然而用unsigned long long ...]]></description><category></category></item><item><title><![CDATA[第十一章例题 UVa11082 Matrix Decompressing]]></title><link>https://blog.youkuaiyun.com/JXUFE_ACMer/article/details/81811292</link><guid>https://blog.youkuaiyun.com/JXUFE_ACMer/article/details/81811292</guid><author>JXUFE_ACMer</author><pubDate>Sat, 18 Aug 2018 17:52:49 +0800</pubDate><description><![CDATA[
/*SE:wn------王宁*/
// UVa11082 Matrix Decompressing
// rewrited version 
/*有没有很神奇，这是一个可以用最大流解决的问题
矩阵的sum值是固定的
所以行和之和=列和之和
也就是说从起点流出的流量最后全部流入了终点
起点分成数量为行数的流，通过分别流入该行与各列交汇的单元格，共同构成各列的列和
起点与代表行的点连接的边的容量就...]]></description><category></category></item><item><title><![CDATA[第十一章例题 UVa753 A Plug for UNIX]]></title><link>https://blog.youkuaiyun.com/JXUFE_ACMer/article/details/81809207</link><guid>https://blog.youkuaiyun.com/JXUFE_ACMer/article/details/81809207</guid><author>JXUFE_ACMer</author><pubDate>Sat, 18 Aug 2018 15:19:42 +0800</pubDate><description><![CDATA[       “完全不知，往日为何，能与我……”

好吧我想说完全不知道为什么我觉得这几天对图论的学习都很有意思，学起来又酷又炫的~

刘汝佳大神的源码我会放在后面。


/*SE：wn------王宁*/
/*回过头去学二分图匹配的匈牙利算法，才发现原来这一题就是二分图匹配啊
关键的一点就是这个转换器是给带插头的设备使用的

有点，有边——int n,m;
要知道和点连接的边——void add...]]></description><category></category></item><item><title><![CDATA[第十一章例题 uva 1151 C- Buy or Build]]></title><link>https://blog.youkuaiyun.com/JXUFE_ACMer/article/details/81672933</link><guid>https://blog.youkuaiyun.com/JXUFE_ACMer/article/details/81672933</guid><author>JXUFE_ACMer</author><pubDate>Tue, 14 Aug 2018 19:26:58 +0800</pubDate><description><![CDATA[自己用dfs实现枚举 + 对刘汝佳大神用二进制枚举的解读 


/*SE:wn------王宁*/
/*Buy or Build 输入输出解读
输入：
城市编号从1-n 
1.告诉你有几个case

2.1 n of cities in the country (1 ≤ n ≤ 1000)  2.2 followed by the number q of existing subnetworks ...]]></description><category></category></item><item><title><![CDATA[第十一章例题 B - UVa1395 Slim Span]]></title><link>https://blog.youkuaiyun.com/JXUFE_ACMer/article/details/81663533</link><guid>https://blog.youkuaiyun.com/JXUFE_ACMer/article/details/81663533</guid><author>JXUFE_ACMer</author><pubDate>Tue, 14 Aug 2018 11:15:14 +0800</pubDate><description><![CDATA[
/*
SE:wn------王宁
使用间接排序而不是结构体实现
UVa1395 Slim Span
*/
/*思路就是从权重最小的边向上枚举边集E中的元素
最大边和最小边的差值和单独一方的值没有关系，所以需要枚举。
生成树的方法就是Kruskal,因为你越早找到最大边，差值就越小*/
/*经验总结
1.你用间接排序可能能节省每次交换数据的时间——只用交换编号
（操作原理：比如e[2]代表第二小的...]]></description><category></category></item><item><title><![CDATA[第九章例题 9-20 Dropping water balloons UVA - 10934]]></title><link>https://blog.youkuaiyun.com/JXUFE_ACMer/article/details/81587399</link><guid>https://blog.youkuaiyun.com/JXUFE_ACMer/article/details/81587399</guid><author>JXUFE_ACMer</author><pubDate>Sat, 11 Aug 2018 15:45:44 +0800</pubDate><description><![CDATA[/*SE:wn------王宁*/
前面是正解，后面的是我自己第一次尝试的代码——仅仅走出了第一步，很有借鉴意义，我也在那里做了一下总结——放在代码中的那一段注释。


/*SE:wn------王宁*/
/*T - Dropping water balloons UVA - 10934 */
#include&amp;lt;bits/stdc++.h&amp;gt;
using namespace std;
c...]]></description><category></category></item><item><title><![CDATA[第九章例题 L - Another Crisis UVA - 12186]]></title><link>https://blog.youkuaiyun.com/JXUFE_ACMer/article/details/81563221</link><guid>https://blog.youkuaiyun.com/JXUFE_ACMer/article/details/81563221</guid><author>JXUFE_ACMer</author><pubDate>Fri, 10 Aug 2018 14:52:01 +0800</pubDate><description><![CDATA[/*SE:wn------王宁*/

思路就是找出前y个需要签署workers数目最小的直接下属，将它们的值累加并且返回即可。

在这里y就是(k*T - 1) / 100 + 1 ——k是直接下属的数量，T是要求的百分比。这是刘汝佳大神的写法。

在我的代码中判断y是用了自己的写法，刘汝佳大神的代码就不贴了

——你永远也想不到在没看原码的前提下居然和他写的一模一样，除了变量名不同。

所以这是...]]></description><category></category></item><item><title><![CDATA[第九章例题 H - Color Length]]></title><link>https://blog.youkuaiyun.com/JXUFE_ACMer/article/details/81559367</link><guid>https://blog.youkuaiyun.com/JXUFE_ACMer/article/details/81559367</guid><author>JXUFE_ACMer</author><pubDate>Fri, 10 Aug 2018 11:28:14 +0800</pubDate><description><![CDATA[/*SE:wn------王宁*/

这题是我理解原代码最久的题目——所以看到这篇文章的你可能也想了很久吧，加油加油。

今天我来给大家说一下刘汝佳大神在紫书中没有详细讲解的部分以及他的原代码中看上去好像不合逻辑的地方（其实是对的啦）。从正面推导我还解释不了——就是这个是怎么想出来的以及极其清晰的运作原理，这应该和dp的最优子结构有关系吧。

书中:d(i,j)是还需要多少费用

代码中：它指的是...]]></description><category></category></item><item><title><![CDATA[第九章例题 F-UVa11584 Partitioning by Palindromes]]></title><link>https://blog.youkuaiyun.com/JXUFE_ACMer/article/details/81531707</link><guid>https://blog.youkuaiyun.com/JXUFE_ACMer/article/details/81531707</guid><author>JXUFE_ACMer</author><pubDate>Thu, 09 Aug 2018 10:16:56 +0800</pubDate><description><![CDATA[/*SE:wn------王宁*/
 会对刘汝佳大神的记忆化判断回文串方法进行解读,至于代码是我理解后自己写的，

会更加直观一些，所以顺序，语句数量会不一样。

 当然啦，刘汝佳大神的代码我会放在最后。


/*SE:wn------王宁*/
#include&amp;lt;bits/stdc++.h&amp;gt;
using namespace std;
const int maxn = 1000+5;
i...]]></description><category></category></item><item><title><![CDATA[第九章例题 E - Jin Ge Jin Qu hao]]></title><link>https://blog.youkuaiyun.com/JXUFE_ACMer/article/details/81501605</link><guid>https://blog.youkuaiyun.com/JXUFE_ACMer/article/details/81501605</guid><author>JXUFE_ACMer</author><pubDate>Wed, 08 Aug 2018 09:30:20 +0800</pubDate><description><![CDATA[/*SE:wn------王宁*/

这道背包思路一点都不难想，大致实现也不难写。

最难的是什么？是在边界值的初始化和特殊情况的处理。

So, let's solve it!
 


/*SE：wn------王宁*/
#include&amp;lt;bits/stdc++.h&amp;gt;
using namespace std;
/*
dp[i][j]是说前i首歌在时刻j所能完成的歌的数目
一.
初始化...]]></description><category></category></item><item><title><![CDATA[第九章例题 B - The Tower of Babylon UVA - 437]]></title><link>https://blog.youkuaiyun.com/JXUFE_ACMer/article/details/81483077</link><guid>https://blog.youkuaiyun.com/JXUFE_ACMer/article/details/81483077</guid><author>JXUFE_ACMer</author><pubDate>Tue, 07 Aug 2018 16:07:57 +0800</pubDate><description><![CDATA[/*SE:wn------王宁*/

刘汝佳大神源码 &amp;amp;&amp;amp; 我的AC代码（可能更简洁易懂）+ 我的前期思路、解说和总结 &amp;amp;&amp;amp;我前期的失败代码
 


// Rujia Liu
#include&amp;lt;cstdio&amp;gt;
#include&amp;lt;cstring&amp;gt;
#include&amp;lt;algorithm&amp;gt;
using namespace std;

#...]]></description><category></category></item><item><title><![CDATA[第九章例题 C - Tour]]></title><link>https://blog.youkuaiyun.com/JXUFE_ACMer/article/details/81476828</link><guid>https://blog.youkuaiyun.com/JXUFE_ACMer/article/details/81476828</guid><author>JXUFE_ACMer</author><pubDate>Tue, 07 Aug 2018 10:35:36 +0800</pubDate><description><![CDATA[/*SE:wn------王宁*/


#include&amp;lt;bits/stdc++.h&amp;gt;
using namespace std;
const int maxn=55;
double x[maxn],y[maxn],dp[maxn][maxn],dist[maxn][maxn];
/*第一部分是求线段长度，no need for explanation
  关键是第二部分
  我之前只有...]]></description><category></category></item><item><title><![CDATA[第九章例题 D- Unidirectional TSP]]></title><link>https://blog.youkuaiyun.com/JXUFE_ACMer/article/details/81476511</link><guid>https://blog.youkuaiyun.com/JXUFE_ACMer/article/details/81476511</guid><author>JXUFE_ACMer</author><pubDate>Tue, 07 Aug 2018 10:23:05 +0800</pubDate><description><![CDATA[/*SE:wn------王宁*/

这是一道简单的多阶段决策题目，但是要注意细节处理。


#include&amp;lt;bits/stdc++.h&amp;gt;
using namespace std;
const int maxr=15;
const int maxc=105;
int mat[maxr][maxc];
int d[maxr][maxc];
int path[maxc];
int mai...]]></description><category></category></item><item><title><![CDATA[第九章例题-A  A Spy in the Metro]]></title><link>https://blog.youkuaiyun.com/JXUFE_ACMer/article/details/81456280</link><guid>https://blog.youkuaiyun.com/JXUFE_ACMer/article/details/81456280</guid><author>JXUFE_ACMer</author><pubDate>Mon, 06 Aug 2018 16:23:54 +0800</pubDate><description><![CDATA[/*SE:wn------王宁*/

先贴出刘汝佳大神的源码：只有在开头有改动，因为他的遇到0不能正常结束。

然后是贴出自己的源码和注释，注释很长，挑能看懂的看，有一些是解读，有一些是产生脑洞后的思考。

还没ac的看解读就行了，ac的不妨也看一下我的困惑和思考过程欢迎批评与指正。

大神源码在此，boom~：


// UVa1025 A Spy in the Metro
// Rujia L...]]></description><category></category></item><item><title><![CDATA[紫书P263 嵌套矩形如何输出所有路径（DAG上的动态规划）代码与解读]]></title><link>https://blog.youkuaiyun.com/JXUFE_ACMer/article/details/81448400</link><guid>https://blog.youkuaiyun.com/JXUFE_ACMer/article/details/81448400</guid><author>JXUFE_ACMer</author><pubDate>Mon, 06 Aug 2018 09:06:53 +0800</pubDate><description><![CDATA[/*SE:wn------王宁*/
我加了一些注释——划重点+帮助思考。

源代码出处：https://blog.youkuaiyun.com/qq_36300700/article/details/78397748
 


#include &amp;lt;iostream&amp;gt;
#include &amp;lt;stdio.h&amp;gt;
#include &amp;lt;string.h&amp;gt;
#include &amp;lt;mat...]]></description><category></category></item></channel></rss>