<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[asmallfish1985的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/asmallfish1985</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; asmallfish1985]]></copyright><item><title><![CDATA[南昌网络赛 H The Nth Item]]></title><link>https://blog.youkuaiyun.com/asmallfish1985/article/details/101102732</link><guid>https://blog.youkuaiyun.com/asmallfish1985/article/details/101102732</guid><author>asmallfish1985</author><pubDate>Mon, 09 Sep 2019 14:37:00 +0800</pubDate><description><![CDATA[南昌网络赛The Nth Item 暴力快速幂+unordered_map记忆化

注意：记忆化不能写到快速幂求解函数里，不断调用函数会造成很大的时间浪费

#include&lt;bits/stdc++.h&gt;
using namespace std;
#define sc(x) scanf("%lld",&amp;x);
#define si signed
#d...]]></description><category></category></item><item><title><![CDATA[Who is better?]]></title><link>https://blog.youkuaiyun.com/asmallfish1985/article/details/101102715</link><guid>https://blog.youkuaiyun.com/asmallfish1985/article/details/101102715</guid><author>asmallfish1985</author><pubDate>Sat, 07 Sep 2019 18:38:00 +0800</pubDate><description><![CDATA[徐州网络赛A
所谓斐波那契博弈
考场推了个假规律自闭==


import java.math.BigInteger;
import java.util.ArrayList;
import java.util.Scanner;
 
public class Main {
 
        static BigInteger m[]=new BigInteger[...]]></description><category></category></item><item><title><![CDATA[D. Treasure Island]]></title><link>https://blog.youkuaiyun.com/asmallfish1985/article/details/101102713</link><guid>https://blog.youkuaiyun.com/asmallfish1985/article/details/101102713</guid><author>asmallfish1985</author><pubDate>Wed, 04 Sep 2019 21:55:00 +0800</pubDate><description><![CDATA[D. Treasure Island
dfs大法好==
写半天bfs疯狂MLE
dfs标记掉路上的一些点
然后再跑一遍dfs

#include&lt;bits/stdc++.h&gt;
using namespace std;
#define int long long
#define sc(x) scanf("%I64d",&amp;x);
#define rea...]]></description><category></category></item><item><title><![CDATA[南京网络赛 E K Sum]]></title><link>https://blog.youkuaiyun.com/asmallfish1985/article/details/101102711</link><guid>https://blog.youkuaiyun.com/asmallfish1985/article/details/101102711</guid><author>asmallfish1985</author><pubDate>Wed, 04 Sep 2019 10:55:00 +0800</pubDate><description><![CDATA[K Sum
终于过了这玩意啊啊啊====
莫比乌斯反演，杜教筛，各种分块，积性函数怎么线性递推还很迷==，得继续研究研究

#include&lt;bits/stdc++.h&gt;
using namespace std;
#define int long long
#define maxn 1000000+10
int P[maxn],g[maxn];
bool v...]]></description><category></category></item><item><title><![CDATA[南京网络赛C]]></title><link>https://blog.youkuaiyun.com/asmallfish1985/article/details/101102710</link><guid>https://blog.youkuaiyun.com/asmallfish1985/article/details/101102710</guid><author>asmallfish1985</author><pubDate>Mon, 02 Sep 2019 16:08:00 +0800</pubDate><description><![CDATA[分段打表大法好！！！
打表40min,A题1s
https://nanti.jisuanke.com/t/41300

#include&lt;bits/stdc++.h&gt;
#define int long long
using namespace std;
#define mod 998244353
const int maxn=100000+2;
int P[...]]></description><category></category></item><item><title><![CDATA[2019 南京网络赛A]]></title><link>https://blog.youkuaiyun.com/asmallfish1985/article/details/101102709</link><guid>https://blog.youkuaiyun.com/asmallfish1985/article/details/101102709</guid><author>asmallfish1985</author><pubDate>Sun, 01 Sep 2019 18:44:00 +0800</pubDate><description><![CDATA[南京网络赛自闭现场
https://nanti.jisuanke.com/t/41298
二维偏序经典题型
二维前缀和！！！

#include&lt;bits/stdc++.h&gt;
using namespace std;
#define int long long
#define sc(x) scanf("%lld",&amp;x);
int T;
#defi...]]></description><category></category></item><item><title><![CDATA[D2. Equalizing by Division (hard version)]]></title><link>https://blog.youkuaiyun.com/asmallfish1985/article/details/101102728</link><guid>https://blog.youkuaiyun.com/asmallfish1985/article/details/101102728</guid><author>asmallfish1985</author><pubDate>Sat, 31 Aug 2019 08:25:00 +0800</pubDate><description><![CDATA[D2. Equalizing by Division (hard version)
涉及下标运算一定要注意下标是否越界！！！

思路，暴力判断以每个数字为到达态最小花费

#include&lt;bits/stdc++.h&gt;
using namespace std;
#define sc(x) scanf("%I64d",&amp;x);
#define read...]]></description><category></category></item><item><title><![CDATA[P3379 【模板】最近公共祖先（LCA）]]></title><link>https://blog.youkuaiyun.com/asmallfish1985/article/details/101102726</link><guid>https://blog.youkuaiyun.com/asmallfish1985/article/details/101102726</guid><author>asmallfish1985</author><pubDate>Fri, 30 Aug 2019 18:57:00 +0800</pubDate><description><![CDATA[P3379 【模板】最近公共祖先（LCA）
LCA模板
询问离线 tarjan算法

#include&lt;bits/stdc++.h&gt;
using namespace std;
vector&lt;int&gt; v[500000+5];
int N,M,root;
bool vis[500000+5];
struct Q
{
    int x,y;
...]]></description><category></category></item><item><title><![CDATA[【模板】线段树 2]]></title><link>https://blog.youkuaiyun.com/asmallfish1985/article/details/101102707</link><guid>https://blog.youkuaiyun.com/asmallfish1985/article/details/101102707</guid><author>asmallfish1985</author><pubDate>Fri, 30 Aug 2019 08:31:00 +0800</pubDate><description><![CDATA[【模板】线段树 2
乘法懒标等于0也要下传，每次乘法操作对加法也要进行

#include&lt;bits/stdc++.h&gt;
using namespace std;
#define int long long
const int maxn=1e5+10;
int v[maxn*4],L[maxn*4],R[maxn*4],lazy1[maxn*4],lazy2[...]]></description><category></category></item><item><title><![CDATA[B. Array K-Coloring]]></title><link>https://blog.youkuaiyun.com/asmallfish1985/article/details/101102704</link><guid>https://blog.youkuaiyun.com/asmallfish1985/article/details/101102704</guid><author>asmallfish1985</author><pubDate>Wed, 28 Aug 2019 12:40:00 +0800</pubDate><description><![CDATA[B. Array K-Coloring
给定一个数组
要求对元素进行染色，满足相同元素颜色一定不同，且所有颜色要全部用完

#include&lt;bits/stdc++.h&gt;
using namespace std;
#define sc(x) scanf("%I64d",&amp;x);
#define int long long
vector&lt;int&g...]]></description><category></category></item><item><title><![CDATA[D. Print a 1337-string...]]></title><link>https://blog.youkuaiyun.com/asmallfish1985/article/details/101102701</link><guid>https://blog.youkuaiyun.com/asmallfish1985/article/details/101102701</guid><author>asmallfish1985</author><pubDate>Wed, 28 Aug 2019 11:57:00 +0800</pubDate><description><![CDATA[D. Print a 1337-string...
输出一个字符串
里面包含n个子序列 1337

#include&lt;bits/stdc++.h&gt;
using namespace std;
#define sc(x) scanf("%I64d",&amp;x);
#define int long long
int t,n;
int C[100005];
v...]]></description><category></category></item><item><title><![CDATA[P2962 [USACO09NOV]灯Lights]]></title><link>https://blog.youkuaiyun.com/asmallfish1985/article/details/101102699</link><guid>https://blog.youkuaiyun.com/asmallfish1985/article/details/101102699</guid><author>asmallfish1985</author><pubDate>Tue, 27 Aug 2019 13:58:00 +0800</pubDate><description><![CDATA[P2962 [USACO09NOV]灯Lights
guass消元异或方程组

#include&lt;bits/stdc++.h&gt;
using namespace std;
#define maxn 100
#define sc(x) scanf("%lld",&amp;x);
#define int long long
int A[maxn][maxn];
i...]]></description><category></category></item><item><title><![CDATA[P1041 传染病控制]]></title><link>https://blog.youkuaiyun.com/asmallfish1985/article/details/101102723</link><guid>https://blog.youkuaiyun.com/asmallfish1985/article/details/101102723</guid><author>asmallfish1985</author><pubDate>Tue, 27 Aug 2019 11:52:00 +0800</pubDate><description><![CDATA[https://www.luogu.org/problem/P1041

#include&lt;bits/stdc++.h&gt;
using namespace std;
#define int long long
#define sc(x) scanf("%lld",&amp;x);
const int maxn = 1000;
int n,m,tot=1,ans=5...]]></description><category></category></item><item><title><![CDATA[B. Uniqueness]]></title><link>https://blog.youkuaiyun.com/asmallfish1985/article/details/101102697</link><guid>https://blog.youkuaiyun.com/asmallfish1985/article/details/101102697</guid><author>asmallfish1985</author><pubDate>Mon, 26 Aug 2019 10:44:00 +0800</pubDate><description><![CDATA[B. Uniqueness
给定一个序列，要求删除一段连续子段，满足删掉子段后每个元素唯一
求最小子段长度
枚举起点，二分子段长度
记得先sort 再unique

#include&lt;bits/stdc++.h&gt;
using namespace std;
#define int long long
#define si signed
#define end...]]></description><category></category></item><item><title><![CDATA[D. Restore Permutation]]></title><link>https://blog.youkuaiyun.com/asmallfish1985/article/details/101102695</link><guid>https://blog.youkuaiyun.com/asmallfish1985/article/details/101102695</guid><author>asmallfish1985</author><pubDate>Mon, 26 Aug 2019 10:39:00 +0800</pubDate><description><![CDATA[D. Restore Permutation
就是给一个n个数的全排，然后bi记录比ai小且在排在ai前面的数的和,求ai
树状数组维护，二分


#include&lt;bits/stdc++.h&gt;
using namespace std;
#define int long long
#define si signed
#define endl '\n'
#d...]]></description><category></category></item><item><title><![CDATA[array]]></title><link>https://blog.youkuaiyun.com/asmallfish1985/article/details/101102722</link><guid>https://blog.youkuaiyun.com/asmallfish1985/article/details/101102722</guid><author>asmallfish1985</author><pubDate>Sat, 24 Aug 2019 11:30:00 +0800</pubDate><description><![CDATA[array
权值线段树
查询剪枝
疯狂RE

#include&lt;bits/stdc++.h&gt;
using namespace std;
#define int long long
#define maxn 100000+500
#define inf n+1
int L[maxn*4],R[maxn*4],V[maxn*4];
int A[maxn],B...]]></description><category></category></item><item><title><![CDATA[Anniversary party]]></title><link>https://blog.youkuaiyun.com/asmallfish1985/article/details/101102721</link><guid>https://blog.youkuaiyun.com/asmallfish1985/article/details/101102721</guid><author>asmallfish1985</author><pubDate>Thu, 22 Aug 2019 15:25:00 +0800</pubDate><description><![CDATA[Anniversary party
树形dp
dp[i][0]=(i的全部员工的max(dp[u][1],dp[u][0)相加，也就是其子员工来或不来的最大快乐值。
dp[i][1]=(i的全部员工的dp[u][0相加，也就是其子员工都不能不来的最大快乐值。

#include &lt;cstdio&gt;
#include &lt;iostream&gt;
#includ...]]></description><category></category></item><item><title><![CDATA[1358. 分割树]]></title><link>https://blog.youkuaiyun.com/asmallfish1985/article/details/101102693</link><guid>https://blog.youkuaiyun.com/asmallfish1985/article/details/101102693</guid><author>asmallfish1985</author><pubDate>Thu, 22 Aug 2019 14:52:00 +0800</pubDate><description><![CDATA[1358. 分割树
现在有一棵树T，有N个节点，我们想通过去掉一个节点p来把T分割成更小的树，并且满足每个小树中的节点数不超过n/2。
请根据输入的树来输出所有可能的p的号码。
树形dp
在遍历树的过程中，访问每个node，维护两个值：

所有子树的结点数的最大值childmax
所有子树(这里包括node)的结点数之和sum。

递归过程中用上一层的sum，不断更新这...]]></description><category></category></item><item><title><![CDATA[Tree and Permutation]]></title><link>https://blog.youkuaiyun.com/asmallfish1985/article/details/101102717</link><guid>https://blog.youkuaiyun.com/asmallfish1985/article/details/101102717</guid><author>asmallfish1985</author><pubDate>Thu, 22 Aug 2019 14:41:00 +0800</pubDate><description><![CDATA[Tree and Permutation
给出一个1,2,3...N的排列，显然全部共有N!种排列，每种排列的数字代表树上的一个结点，设Pi是其中第i种排列的相邻数字表示的结点的距离之和，让我们求sum(Pi)(1&lt;=i&lt;=N!)。
可以设dis(i, j)为树上任意两点间的最短距离，每两点之间的距离都出现了 (N-1)！次,所求答案为 (N-1)! * sum(dis(...]]></description><category></category></item><item><title><![CDATA[码队的新桌游]]></title><link>https://blog.youkuaiyun.com/asmallfish1985/article/details/101102716</link><guid>https://blog.youkuaiyun.com/asmallfish1985/article/details/101102716</guid><author>asmallfish1985</author><pubDate>Thu, 22 Aug 2019 11:36:00 +0800</pubDate><description><![CDATA[码队的新桌游
树状数组、离散化、二维偏序

#include &lt;bits/stdc++.h&gt;
///即找x.a&lt;y.b&lt;x.c&amp;&amp;y.a&lt;x.b&lt;y.c的组数
using namespace std;

struct Item {
    int a, b, c;
    int id;
    int ans;
...]]></description><category></category></item></channel></rss>