<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[WISH2LUCK的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/WISH2LUCK</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; WISH2LUCK]]></copyright><item><title><![CDATA[2020牛客多校第三场 H 笛卡尔树]]></title><link>https://blog.youkuaiyun.com/WISH2LUCK/article/details/107508771</link><guid>https://blog.youkuaiyun.com/WISH2LUCK/article/details/107508771</guid><author>WISH2LUCK</author><pubDate>Wed, 22 Jul 2020 11:32:10 +0800</pubDate><description><![CDATA[大致题意：给定一个长度为n的字符串S，字符串满足“01234567890123…”。给出长度为n的数列p和数列d，执行n次操作，每次操作将S[p[i]]位置的数字替换成d[i]，每次操作都会得到一个新的字符串，求这(n+1)个字符串的先后顺序。
思路：首先，很容易知道，如果第i次操作把字符串的第一个位置也就是S[0]替换成更小的数字，那么在第i次操作后得到的所有字符串都比第i次操作前得到的字符串大。
比如第i次操作前，得到的字符串全都是"4…"
将4替换成2后，得到的字符串都是“2…”
所以，如果将第一个位]]></description><category></category></item><item><title><![CDATA[2020牛客多校第四场 B]]></title><link>https://blog.youkuaiyun.com/WISH2LUCK/article/details/107472097</link><guid>https://blog.youkuaiyun.com/WISH2LUCK/article/details/107472097</guid><author>WISH2LUCK</author><pubDate>Mon, 20 Jul 2020 20:10:46 +0800</pubDate><description><![CDATA[2020牛客多校第四场 B
解法：
如果要最优，必须要使gcd的次数最多。
已知x=p1k1p2k2…
我们可以让y=gcd(i,x)=p1k1-1p2k2…
以此类推，最多可以执行(k1+k2+…kn)次。
#include &lt;bits/stdc++.h&gt;
 
using namespace std;
typedef long long ll;
const int N = 1e6;
bool vis[N+10];
int p[N+10],a[N+10];
void init(int n){
 ]]></description><category></category></item><item><title><![CDATA[Codeforces Round #631 (Div. 2) D]]></title><link>https://blog.youkuaiyun.com/WISH2LUCK/article/details/105635292</link><guid>https://blog.youkuaiyun.com/WISH2LUCK/article/details/105635292</guid><author>WISH2LUCK</author><pubDate>Mon, 20 Apr 2020 14:56:04 +0800</pubDate><description><![CDATA[Codeforces Round #631 (Div. 2) D
dp 不错
#include&lt;bits/stdc++.h&gt;
using namespace std;
typedef long long ll;
const int N=1e5+10;
int dig[40],m;
ll dp[40];
ll pow2[40];
int main()
{
    int t;
    c...]]></description><category></category></item><item><title><![CDATA[Codeforces Round #627 (Div. 3) F]]></title><link>https://blog.youkuaiyun.com/WISH2LUCK/article/details/105635211</link><guid>https://blog.youkuaiyun.com/WISH2LUCK/article/details/105635211</guid><author>WISH2LUCK</author><pubDate>Mon, 20 Apr 2020 14:53:14 +0800</pubDate><description><![CDATA[Codeforces Round #627 (Div. 3) F
写完A，发现题目太难，
只能跳过BCDE，把F过了被迫下线QAQ
简单的树形dp
#include&lt;bits/stdc++.h&gt;
using namespace std;
const int N=2e5+10;
int head[N],cnt;
int val[N];
struct edge{
    int next,...]]></description><category></category></item><item><title><![CDATA[2019 ICPC Universidad Nacional de Colombia Programming Contest 题解]]></title><link>https://blog.youkuaiyun.com/WISH2LUCK/article/details/105634744</link><guid>https://blog.youkuaiyun.com/WISH2LUCK/article/details/105634744</guid><author>WISH2LUCK</author><pubDate>Mon, 20 Apr 2020 14:43:44 +0800</pubDate><description><![CDATA[2019 ICPC Universidad Nacional de Colombia Programming Contest 题解
A:貌似是计算几何
#include&lt;bits/stdc++.h&gt;
using namespace std;
struct vec{
	int x,y;
	vec(int _x,int _y):x(_x),y(_y){
		int d=__gcd(x,y)...]]></description><category></category></item><item><title><![CDATA[牛客练习赛61题解]]></title><link>https://blog.youkuaiyun.com/WISH2LUCK/article/details/105634228</link><guid>https://blog.youkuaiyun.com/WISH2LUCK/article/details/105634228</guid><author>WISH2LUCK</author><pubDate>Mon, 20 Apr 2020 14:19:44 +0800</pubDate><description><![CDATA[牛客练习赛61  题解
A:正义感爆棚去打怪
#include&lt;bits/stdc++.h&gt;
using namespace std;
int main(){
    int t;
    scanf("%d",&amp;t);
    while(t--){
        int h,a,H,A;
        scanf("%d %d %d %d",&amp;h,&amp;a,...]]></description><category></category></item><item><title><![CDATA[牛客小白月赛24 题解]]></title><link>https://blog.youkuaiyun.com/WISH2LUCK/article/details/105633986</link><guid>https://blog.youkuaiyun.com/WISH2LUCK/article/details/105633986</guid><author>WISH2LUCK</author><pubDate>Mon, 20 Apr 2020 14:13:09 +0800</pubDate><description><![CDATA[牛客小白月赛24 题解
最后还剩一道计算几何，其实可以AK，但没必要///
B：签到
#include &lt;bits/stdc++.h&gt;
 
using namespace std;
const int N=2e5+10;
int a[N];
int main()
{
    int t;scanf("%d",&amp;t);
    while(t--){
        int n,...]]></description><category></category></item><item><title><![CDATA[2019 JUST Programming Contest 题解]]></title><link>https://blog.youkuaiyun.com/WISH2LUCK/article/details/105633370</link><guid>https://blog.youkuaiyun.com/WISH2LUCK/article/details/105633370</guid><author>WISH2LUCK</author><pubDate>Mon, 20 Apr 2020 13:53:26 +0800</pubDate><description><![CDATA[2019 JUST Programming Contest 题解
#还行
A:还行
#include &lt;bits/stdc++.h&gt;
 
using namespace std;
typedef long long ll;
const int N=1e5+10;
const int M=2e5+10;
int head[N],cnt=1,tot,dfn[N],low[N],num,n,...]]></description><category></category></item></channel></rss>