<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[EIP_silly的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/EIP_silly</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; EIP_silly]]></copyright><item><title><![CDATA[详解HDU - 2442 Bricks]]></title><link>https://blog.youkuaiyun.com/EIP_silly/article/details/119801553</link><guid>https://blog.youkuaiyun.com/EIP_silly/article/details/119801553</guid><author>EIP_silly</author><pubDate>Thu, 19 Aug 2021 14:42:03 +0800</pubDate><description><![CDATA[DP+三进制状态压缩。
原文链接：https://blog.youkuaiyun.com/cqlf__/article/details/7943920
本文在原文的基础上添加了代码注释，方便理解代码思路。
#include &lt;bits/stdc++.h&gt;
using namespace std;

int dp[105][729], pow3[10], stac1[10], stac2[10];
int n, m, ans;

// 三进制转十进制
int ctod(int three[10]){
    ]]></description><category></category></item><item><title><![CDATA[合法矩阵的面积之和]]></title><link>https://blog.youkuaiyun.com/EIP_silly/article/details/104176452</link><guid>https://blog.youkuaiyun.com/EIP_silly/article/details/104176452</guid><author>EIP_silly</author><pubDate>Tue, 04 Feb 2020 23:07:56 +0800</pubDate><description><![CDATA[给出一张n*m（1&lt;=n,m&lt;=2000）的矩阵，’.’ 代表空地,’#’ 代表障碍物，合法矩阵为内部不含障碍物的矩阵。求出所有合法矩阵的面积之和。
input
2 3
.#.
…#
output
8
input
3 3
…
…
…
output
100
input
3 4
…#.
#…
…#
output
40
先预处理出一个数组dp，记录每个点向上最大的合法高度。 对于每一行，维护...]]></description><category></category></item><item><title><![CDATA[UVA 11990]]></title><link>https://blog.youkuaiyun.com/EIP_silly/article/details/104096861</link><guid>https://blog.youkuaiyun.com/EIP_silly/article/details/104096861</guid><author>EIP_silly</author><pubDate>Tue, 28 Jan 2020 01:33:17 +0800</pubDate><description><![CDATA[给你n个数的一个全排列，然后有m次操作，每次操作可以删除一个数然后问你每次删除之前，还有多少个逆序对
CDQ分治。
按照删除的时间顺序，对于每个被删除的数，给一个删除的时间。最先删除的时间定为n，第二个为n-1，以此类推。剩下的未被删除的给一个未出现过的1-n之间的序号。
可以求得一开始数组中存在的逆序对个数。每次删去一个数，只要减去这个数的贡献就可以了。
计算贡献就是计算 时间比他小，位置在它...]]></description><category></category></item><item><title><![CDATA[POJ-3470 Walls]]></title><link>https://blog.youkuaiyun.com/EIP_silly/article/details/104094207</link><guid>https://blog.youkuaiyun.com/EIP_silly/article/details/104094207</guid><author>EIP_silly</author><pubDate>Mon, 27 Jan 2020 17:27:21 +0800</pubDate><description><![CDATA[POJ-3470 Walls
Time Limit: 6000MS		Memory Limit: 131072K
Total Submissions: 2624		Accepted: 402
Case Time Limit: 3000MS
Description
There are N walls. A wall has an infinity height, so it looks like a...]]></description><category></category></item><item><title><![CDATA[POJ-3109 Inner Vertices (扫描线 + 离散化 + 树状数组)]]></title><link>https://blog.youkuaiyun.com/EIP_silly/article/details/104089922</link><guid>https://blog.youkuaiyun.com/EIP_silly/article/details/104089922</guid><author>EIP_silly</author><pubDate>Sun, 26 Jan 2020 22:16:16 +0800</pubDate><description><![CDATA[Inner Vertices
Time Limit: 5000MS		Memory Limit: 65536K
Total Submissions: 3253		Accepted: 954
Case Time Limit: 2000MS
Description
There is an infinite square grid. Some vertices of the grid are black...]]></description><category></category></item><item><title><![CDATA[P2057 [SHOI2007]善意的投票]]></title><link>https://blog.youkuaiyun.com/EIP_silly/article/details/104089084</link><guid>https://blog.youkuaiyun.com/EIP_silly/article/details/104089084</guid><author>EIP_silly</author><pubDate>Sun, 26 Jan 2020 20:12:12 +0800</pubDate><description><![CDATA[题目描述
幼儿园里有n个小朋友打算通过投票来决定睡不睡午觉。对他们来说，这个问题并不是很重要，于是他们决定发扬谦让精神。虽然每个人都有自己的主见，但是为了照顾一下自己朋友的想法，他们也可以投和自己本来意愿相反的票。我们定义一次投票的冲突数为好朋友之间发生冲突的总数加上和所有和自己本来意愿发生冲突的人数。
我们的问题就是，每位小朋友应该怎样投票，才能使冲突数最小？
输入格式
文件的第一行只有两个整数...]]></description><category></category></item><item><title><![CDATA[P1361 小M的作物]]></title><link>https://blog.youkuaiyun.com/EIP_silly/article/details/104085549</link><guid>https://blog.youkuaiyun.com/EIP_silly/article/details/104085549</guid><author>EIP_silly</author><pubDate>Sun, 26 Jan 2020 20:03:11 +0800</pubDate><description><![CDATA[P1361 小M的作物
题目描述
小M在MC里开辟了两块巨大的耕地A和B（你可以认为容量是无穷），现在，小P有n中作物的种子，每种作物的种子有1个（就是可以种一棵作物）（用1…n编号）。
现在，第i种作物种植在A中种植可以获得ai的收益，在B中种植可以获得bi的收益，而且，现在还有这么一种神奇的现象，就是某些作物共同种在一块耕地中可以获得额外的收益，小M找到了规则中共有m种作物组合，第i个组合中的...]]></description><category></category></item><item><title><![CDATA[2019ICPC南京J - Spy]]></title><link>https://blog.youkuaiyun.com/EIP_silly/article/details/103529985</link><guid>https://blog.youkuaiyun.com/EIP_silly/article/details/103529985</guid><author>EIP_silly</author><pubDate>Fri, 13 Dec 2019 16:42:08 +0800</pubDate><description><![CDATA[2019ICPC南京J - Spy



有两个队伍进行比拼
两边各有n个人
第一行表示Amy队伍每个人的战斗力
第二行表示击败每个人能获得的声望值
第三行表示Bob第一只队伍的战斗力
第三行表示Bob第二支队伍的战斗力
Bob的两支队伍的队员两两配，战斗力相加，然后和Amy的队员进行战斗。
每个人只能战斗一次。
如果Bob方的战斗力大于Amy的就获得声望值，如果战斗力≤Amy队员战斗力，就无法获...]]></description><category></category></item><item><title><![CDATA[Gym - 102201I Increasing Sequence（DAG找支配树）]]></title><link>https://blog.youkuaiyun.com/EIP_silly/article/details/103528365</link><guid>https://blog.youkuaiyun.com/EIP_silly/article/details/103528365</guid><author>EIP_silly</author><pubDate>Fri, 13 Dec 2019 16:18:35 +0800</pubDate><description><![CDATA[Gym - 102201I Increasing Sequence（DAG找支配树）
原题链接
给你长度为n(1≤n≤250000)的序列，问对于每个点 iii 存在多少个点 jjj (i≠ji≠ji​=j)， jjj 在被删去之后会影响包含 iii 的LISLISLIS的长度

#include&lt;bits/stdc++.h&gt;
using namespace std;
#define...]]></description><category></category></item><item><title><![CDATA[2019 ICPC 银川区域赛 H - Delivery Route]]></title><link>https://blog.youkuaiyun.com/EIP_silly/article/details/103528285</link><guid>https://blog.youkuaiyun.com/EIP_silly/article/details/103528285</guid><author>EIP_silly</author><pubDate>Fri, 13 Dec 2019 15:34:48 +0800</pubDate><description><![CDATA[2019 ICPC 银川区域赛 H - Delivery Route



给一个n个点,x条双向边，y条单向边的图，同时双向边权全为正，单向边权有可能为负，且保证单向边不会出现在环中。求从点s分别到1~ n的最短距离。
打重现赛的时候想到了 tarjan强联通缩点，内部dijkstra，外部拓扑排序来解决。
但是觉得自己图论太菜了，就和队友一起去做A题的DP
事实证明，就算是赛后补题还是花了我大...]]></description><category></category></item><item><title><![CDATA[P2766 最长不下降子序列问题]]></title><link>https://blog.youkuaiyun.com/EIP_silly/article/details/103264261</link><guid>https://blog.youkuaiyun.com/EIP_silly/article/details/103264261</guid><author>EIP_silly</author><pubDate>Tue, 26 Nov 2019 20:51:25 +0800</pubDate><description><![CDATA[«问题描述：
给定正整数序列x1,…,xn 。
（1）计算其最长不下降子序列的长度s。
（2）计算从给定的序列中最多可取出多少个长度为s的不下降子序列。
（3）如果允许在取出的序列中多次使用x1和xn，则从给定序列中最多可取出多少个长度为s的不下降子序列。
«编程任务：
设计有效算法完成（1）（2）（3）提出的计算任务。
输入格式
第1 行有1个正整数n，表示给定序列的长度。接下来的1 行有n个正...]]></description><category></category></item><item><title><![CDATA[P2764 最小路径覆盖问题]]></title><link>https://blog.youkuaiyun.com/EIP_silly/article/details/103059819</link><guid>https://blog.youkuaiyun.com/EIP_silly/article/details/103059819</guid><author>EIP_silly</author><pubDate>Wed, 13 Nov 2019 23:57:54 +0800</pubDate><description><![CDATA[题目描述
«问题描述：
给定有向图G=(V,E)。设P 是G 的一个简单路（顶点不相交）的集合。如果V 中每个顶点恰好在P 的一条路上，则称P是G 的一个路径覆盖。P 中路径可以从V 的任何一个顶点开始，长度也是任意的，特别地，可以为0。G 的最小路径覆盖是G 的所含路径条数最少的路径覆盖。设计一个有效算法求一个有向无环图G 的最小路径覆盖。
提示：设V={1，2，… ，n}，构造网络G1=(V1...]]></description><category></category></item><item><title><![CDATA[P2762 太空飞行计划问题（最大权子图）]]></title><link>https://blog.youkuaiyun.com/EIP_silly/article/details/103040080</link><guid>https://blog.youkuaiyun.com/EIP_silly/article/details/103040080</guid><author>EIP_silly</author><pubDate>Tue, 12 Nov 2019 23:33:00 +0800</pubDate><description><![CDATA[P2762 太空飞行计划问题
题目描述
W 教授正在为国家航天中心计划一系列的太空飞行。每次太空飞行可进行一系列商业性实验而获取利润。现已确定了一个可供选择的实验集合E={E1，E2，…，Em}，和进行这些实验需要使用的全部仪器的集合I={I1，I2，…In}。实验Ej需要用到的仪器是I的子集RjÍI。配置仪器Ik的费用为ck美元。实验Ej的赞助商已同意为该实验结果支付pj美元。W教授的任务是找出...]]></description><category></category></item><item><title><![CDATA[AtCoder 5168 - Card Collector (二分图匹配的HALL定理)]]></title><link>https://blog.youkuaiyun.com/EIP_silly/article/details/102978342</link><guid>https://blog.youkuaiyun.com/EIP_silly/article/details/102978342</guid><author>EIP_silly</author><pubDate>Fri, 08 Nov 2019 18:31:12 +0800</pubDate><description><![CDATA[Problem Statement
There are N cards placed on a grid with H rows and W columns of squares.
The i-th card has an integer Ai written on it, and it is placed on the square at the Ri-th row from the top a...]]></description><category></category></item><item><title><![CDATA[CF 724E - Goods transportation]]></title><link>https://blog.youkuaiyun.com/EIP_silly/article/details/102978045</link><guid>https://blog.youkuaiyun.com/EIP_silly/article/details/102978045</guid><author>EIP_silly</author><pubDate>Fri, 08 Nov 2019 18:16:31 +0800</pubDate><description><![CDATA[E. Goods transportation
time limit per test2 seconds
memory limit per test256 megabytes
inputstandard input
outputstandard output
There are n cities located along the one-way road. Cities are numbered...]]></description><category></category></item><item><title><![CDATA[板子]]></title><link>https://blog.youkuaiyun.com/EIP_silly/article/details/99727219</link><guid>https://blog.youkuaiyun.com/EIP_silly/article/details/99727219</guid><author>EIP_silly</author><pubDate>Tue, 22 Oct 2019 23:03:41 +0800</pubDate><description><![CDATA[二分图最大匹配（匈牙利算法）
bool dfs(int x)
{
	for (int i = 0;i&lt;m;i++)
	{
		if (vis[x][i] &amp;&amp; !check[i])//邻接矩阵存储 
		{
			check[i] = 1;
			if (cy[i] == -1 || dfs(cy[i]))
			{
				cx[x] = i;
				cy[i] = x;...]]></description><category></category></item><item><title><![CDATA[HDU 6731 - Angle Beats]]></title><link>https://blog.youkuaiyun.com/EIP_silly/article/details/101673375</link><guid>https://blog.youkuaiyun.com/EIP_silly/article/details/101673375</guid><author>EIP_silly</author><pubDate>Sun, 29 Sep 2019 11:23:04 +0800</pubDate><description><![CDATA[Angle Beats
Time Limit: 20000/15000 MS (Java/Others)    Memory Limit: 131072/131072 K (Java/Others)
Total Submission(s): 318    Accepted Submission(s): 43
Problem Description
Given n points P1, P2, … ...]]></description><category></category></item><item><title><![CDATA[关于KM板子的一个小细节]]></title><link>https://blog.youkuaiyun.com/EIP_silly/article/details/99936733</link><guid>https://blog.youkuaiyun.com/EIP_silly/article/details/99936733</guid><author>EIP_silly</author><pubDate>Wed, 21 Aug 2019 09:44:46 +0800</pubDate><description><![CDATA[一个一般不怎么会遇到的小细节。
也是在被下面这道题坑了才发现的。
My Brute
Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 1932    Accepted Submission(s): 714
Problem Descripti...]]></description><category></category></item><item><title><![CDATA[SPOJ - QTREE4    Query on a tree IV（动态点分治）]]></title><link>https://blog.youkuaiyun.com/EIP_silly/article/details/99672001</link><guid>https://blog.youkuaiyun.com/EIP_silly/article/details/99672001</guid><author>EIP_silly</author><pubDate>Fri, 16 Aug 2019 10:35:11 +0800</pubDate><description><![CDATA[QTREE4 - Query on a tree IV
#tree
You are given a tree (an acyclic undirected connected graph) with N nodes, and nodes numbered 1,2,3…,N. Each edge has an integer value assigned to it(note that the va...]]></description><category></category></item><item><title><![CDATA[牛客多校第八场 E - Explorer（时间分治 + 离散化 + 并查集 + 线段树）]]></title><link>https://blog.youkuaiyun.com/EIP_silly/article/details/99627614</link><guid>https://blog.youkuaiyun.com/EIP_silly/article/details/99627614</guid><author>EIP_silly</author><pubDate>Thu, 15 Aug 2019 12:33:26 +0800</pubDate><description><![CDATA[巧妙的时间分治思想
根据通道的大小的大小建立一棵线段树。
对于每条边，根据它 l 和 r的大小把它放到线段树对应的位置。
然后从根开始dfs，每经过一个结点，就把结点存的边都加进来，通过并查集维护，跑到叶子结点的时候，判断一下1和n在不在同一个并查集中，在的话表明叶子节点所代表的大小可以使得主角从1抵达n，把它记录下来。合并并查集的时候按秩合并
观察题目给的数据范围可知n和m都在1e5里面，...]]></description><category></category></item></channel></rss>