<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[u011237384的专栏]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/u011237384</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; u011237384]]></copyright><item><title><![CDATA[2015 ICL, Finals, Div. 1 Ceizenpok’s formula && Gym - 100633J]]></title><link>https://blog.youkuaiyun.com/u011237384/article/details/80298178</link><guid>https://blog.youkuaiyun.com/u011237384/article/details/80298178</guid><author>u011237384</author><pubDate>Sun, 13 May 2018 12:40:42 +0800</pubDate><description><![CDATA[上来先感谢大佬的文章：https://blog.youkuaiyun.com/clove_unique/article/details/54571216

题目链接：http://codeforces.com/gym/100633/problem/J

题意：


  求Ckn%pCnk%pC_n^k\%p的值，其中1≤n≤10181≤n≤10181\le n \le 10^{18},0≤k≤n0≤k≤n0\...]]></description><category></category></item><item><title><![CDATA[Miller-Rabin 素数判定算法]]></title><link>https://blog.youkuaiyun.com/u011237384/article/details/80048581</link><guid>https://blog.youkuaiyun.com/u011237384/article/details/80048581</guid><author>u011237384</author><pubDate>Mon, 23 Apr 2018 11:54:16 +0800</pubDate><description><![CDATA[感谢Sunshine_cfbsl的文章：https://blog.youkuaiyun.com/sunshine_cfbsl/article/details/52425798算法核心：
引入随机数进行判断，判断的结果有可能会出错，但是当检验次数增加的时候，错误的概率会降低到一个很低的程度
算法思路：前提：（1）费马小定理：对于一个质数p，取任意整数a，满足gcd(p,a)=1，则有 
  ap−1≡1(mod(]]></description><category></category></item><item><title><![CDATA[Gym - 101606B 旋转卡壳]]></title><link>https://blog.youkuaiyun.com/u011237384/article/details/79565605</link><guid>https://blog.youkuaiyun.com/u011237384/article/details/79565605</guid><author>u011237384</author><pubDate>Thu, 15 Mar 2018 11:30:34 +0800</pubDate><description><![CDATA[题意：


给定n个点，求凸边形宽的最小值
凸边形的宽指的是如同用游标卡尺卡着多边形的宽度




图中蓝线即宽；



引入概念：旋转卡壳


名称来源于算法的过程就像用游标卡尺卡着凸包旋转一周一样。




最小宽度算法思想：


1.计算多边形 y 方向上的端点。 我们称之为 ymin 和 ymax 
2.通过 ymin 和 ymax 构造两条水平切线。 由于他们已经是一对对踵点， 计算他们...]]></description><category></category></item><item><title><![CDATA[My Andoid Tool 微信禁用方案记录]]></title><link>https://blog.youkuaiyun.com/u011237384/article/details/79434901</link><guid>https://blog.youkuaiyun.com/u011237384/article/details/79434901</guid><author>u011237384</author><pubDate>Sun, 04 Mar 2018 10:24:11 +0800</pubDate><description><![CDATA[活动：AppInstallUI 微信更新UI 禁用后打开微信闪退AppUpdateUI同上ExdeviceRankInfoUI 微信运动详细页服务：AccountAuthenticatorService 禁用后小程序不能使用SportService 微信运动MainProcessIPCService 小程序定位，禁用后小程序不能启动AppBrandMainProcessService小程序WebV...]]></description><category></category></item><item><title><![CDATA[codeforce 939E 差分+二分/三分]]></title><link>https://blog.youkuaiyun.com/u011237384/article/details/79409992</link><guid>https://blog.youkuaiyun.com/u011237384/article/details/79409992</guid><author>u011237384</author><pubDate>Thu, 01 Mar 2018 11:18:21 +0800</pubDate><description><![CDATA[传送门：http://codeforces.com/problemset/problem/939/E



题意：


  有两种操作：
  
  （1）在集合S中插入一个元素
  
  （2）输出最大的 Max(s)−mean(s)Max(s)−mean(s) Max(s)-mean(s) ——其中s是集合的子集，Max(s)表示s中最大的元素，mean(s)表示s的平均值
  
  （3） 输...]]></description><category></category></item><item><title><![CDATA[codeforce 940D 思维题]]></title><link>https://blog.youkuaiyun.com/u011237384/article/details/79379614</link><guid>https://blog.youkuaiyun.com/u011237384/article/details/79379614</guid><author>u011237384</author><pubDate>Mon, 26 Feb 2018 17:17:19 +0800</pubDate><description><![CDATA[传送门：http://codeforces.com/problemset/problem/940/D



题意：


  b1 = b2 = b3 = b4 = 0. 
  For all 5 ≤ i ≤ n: 
  bi = 0 if ai, ai - 1, ai - 2, ai - 3, ai - 4 &amp;gt; r and bi - 1 = bi - 2 = bi - 3 = bi - 4 ...]]></description><category></category></item><item><title><![CDATA[codeforce 920E 补图的连通性问题]]></title><link>https://blog.youkuaiyun.com/u011237384/article/details/79325565</link><guid>https://blog.youkuaiyun.com/u011237384/article/details/79325565</guid><author>u011237384</author><pubDate>Wed, 14 Feb 2018 15:41:39 +0800</pubDate><description><![CDATA[链接：http://codeforces.com/problemset/problem/920/E题意：
  给定一个图，求这个图的补图的连通块个数以及每个联通块的大小
分析：
  模板题，出自ysq大佬的链表+BFS强优化
算法思想:
  （1）构造一条所有节点的链表： 1->2->3->…….（此处可以用set代替——将1-n的数字放入set中，会增加一个log的复杂度，而且操作不如链表灵活）]]></description><category></category></item><item><title><![CDATA[codeforce 911F]]></title><link>https://blog.youkuaiyun.com/u011237384/article/details/79306677</link><guid>https://blog.youkuaiyun.com/u011237384/article/details/79306677</guid><author>u011237384</author><pubDate>Sat, 10 Feb 2018 20:18:06 +0800</pubDate><description><![CDATA[传送门：http://codeforces.com/problemset/problem/911/F题意：
  给你一棵树，每次选两个点，答案加上这两个点的距离，然后删除其中一个点，重复直到只剩下一个点，求最大的答案及每次的操作
题解：
  （1）树的直径：树上最长的简单路径即为树的直径 
  （2）选择一个在直径外的点，与它距离最远的点一定是直径的两个端点之一 
  （3）每次从直径外找一个点，直]]></description><category></category></item><item><title><![CDATA[codeforce 911E 模拟]]></title><link>https://blog.youkuaiyun.com/u011237384/article/details/79253479</link><guid>https://blog.youkuaiyun.com/u011237384/article/details/79253479</guid><author>u011237384</author><pubDate>Sun, 04 Feb 2018 16:51:12 +0800</pubDate><description><![CDATA[传送门：http://codeforces.com/problemset/problem/911/E题意：
  给定n和k，构造一个以给定序列为前缀的，字典序的最大的，能够通过进栈和出栈操作使得序列变为升序的，一个n个元素的排列
分析：
  直接模拟即可，如果在栈里面出现 i<ji<j && ai<aja_i<a_j 则无解
代码：#include <iostream>
#include <bits]]></description><category></category></item><item><title><![CDATA[codeforce911D 暴力+思维]]></title><link>https://blog.youkuaiyun.com/u011237384/article/details/79252193</link><guid>https://blog.youkuaiyun.com/u011237384/article/details/79252193</guid><author>u011237384</author><pubDate>Sun, 04 Feb 2018 13:26:19 +0800</pubDate><description><![CDATA[传送门：http://codeforces.com/problemset/problem/911/D



题意：


  给定一个序列，有m次操作，每次操作选取一个区间，将所有的数翻转，每次操作之后输出整个序列的逆序对个数的奇偶




分析：


  由于m特别大，没办法用暴力求出逆序对的个数，而且题目也没有要求逆序对的个数，而是要求逆序对的奇偶，这给了我们一点思考，翻转之后的奇偶性由什么决定]]></description><category></category></item><item><title><![CDATA[Codeforce 912D]]></title><link>https://blog.youkuaiyun.com/u011237384/article/details/79242311</link><guid>https://blog.youkuaiyun.com/u011237384/article/details/79242311</guid><author>u011237384</author><pubDate>Fri, 02 Feb 2018 19:09:50 +0800</pubDate><description><![CDATA[题目链接：http://codeforces.com/problemset/problem/912/D
题意：
给定n*m的一个鱼塘，渔网的大小为r*r，现在需要在鱼塘里面放k条鱼，使得捞上来的鱼的期望最大，求最大的期望。
分析：
枚举所有鱼的放置方式显然不可能，其实问题可以转换成——找k个被渔网覆盖次数最多的点，计算这种情况下的期望。
一个显然的道理是越靠近中心的位置能被渔网覆盖的数量]]></description><category></category></item><item><title><![CDATA[CF913C dp+贪心+数位]]></title><link>https://blog.youkuaiyun.com/u011237384/article/details/79121295</link><guid>https://blog.youkuaiyun.com/u011237384/article/details/79121295</guid><author>u011237384</author><pubDate>Sun, 21 Jan 2018 17:06:46 +0800</pubDate><description><![CDATA[题目链接：点这里题目大意：
  给定n和L，接下来n个数，第i个数aia_i（0<=i<=n-1）代表购买2i−12^{i-1}个物品的花费，要求购买不少于L个的最小花费是多少
思路：
  n，L的数值都比较大，使用多重背包不可行，观察题目可以发现，答案很可能与二进制位有关。可以想到，aia_i与ai+1a_{i+1}之间有三种关系 
  ①2*aia_i=ai+1a_{i+1} 
  ②2*aia]]></description><category></category></item><item><title><![CDATA[【AC梦工厂】广工华工联合训练6 K - Extrasensory Perception]]></title><link>https://blog.youkuaiyun.com/u011237384/article/details/78176625</link><guid>https://blog.youkuaiyun.com/u011237384/article/details/78176625</guid><author>u011237384</author><pubDate>Sun, 08 Oct 2017 19:14:31 +0800</pubDate><description><![CDATA[传送门：https://vjudge.net/contest/189920#problem/K题意：
  大数错排
代码：（记录下第一次java ac）import java.io.*;
import java.math.BigDecimal;
import java.math.BigInteger;
import java.util.Scanner;public class miaomiaomia]]></description><category></category></item><item><title><![CDATA[【AC梦工厂】广工华工联合训练1 H - Programming a robot]]></title><link>https://blog.youkuaiyun.com/u011237384/article/details/78148983</link><guid>https://blog.youkuaiyun.com/u011237384/article/details/78148983</guid><author>u011237384</author><pubDate>Sun, 01 Oct 2017 21:35:17 +0800</pubDate><description><![CDATA[传送门：https://vjudge.net/contest/188332#problem/H题目大意
  给你一个机器人，只能右转和执行，给定初始坐标和重点坐标，求出操作数和方法。
题解
  你懂的，就是暴力枚举所有情况；点在左上角，右上角，右下角，左下角全部枚举一次，注意同一平行线时候的情况就可以了。
代码#include <iostream>
#include <bits/stdc++.h>]]></description><category></category></item><item><title><![CDATA[【AC梦工厂】广工华工联合训练1 A - Comunicating the Tibet]]></title><link>https://blog.youkuaiyun.com/u011237384/article/details/78148928</link><guid>https://blog.youkuaiyun.com/u011237384/article/details/78148928</guid><author>u011237384</author><pubDate>Sun, 01 Oct 2017 21:25:51 +0800</pubDate><description><![CDATA[传送门：https://vjudge.net/contest/188332#problem/A题目大意：
  给定一个（n,m）图，需要在每个点上给一个不超过k的值，使得相邻的点的值不相同，不存在时输出-1
题解
  一开始想法是先求联通分支，再topo给点赋值，但看到别人的代码后发现更简单的思路是，直接在dfs的过程中给点赋值，因为在dfs的过程中已经相当于是topo的过程了。
代码    #in]]></description><category></category></item><item><title><![CDATA[ICPC XIV NEERC Western Subregional Contest I题]]></title><link>https://blog.youkuaiyun.com/u011237384/article/details/77097508</link><guid>https://blog.youkuaiyun.com/u011237384/article/details/77097508</guid><author>u011237384</author><pubDate>Fri, 11 Aug 2017 14:49:33 +0800</pubDate><description><![CDATA[没有开头语题目大意
  给定一个无向图，构造子图使得所有节点的度数都为奇数
思路
  对于每个连通块，构造一个生成树，如果一条边连着的子节点对应的子树大小为奇数，那这条边取，否则不取，复杂度为O(n+m)
代码#include <bits/stdc++.h>
using namespace std;
typedef pair<int,int>pii;
vector<int>g[100005];
ve]]></description><category></category></item><item><title><![CDATA[Central Europe Regional Contest 2016 C.Convex Contour]]></title><link>https://blog.youkuaiyun.com/u011237384/article/details/76800056</link><guid>https://blog.youkuaiyun.com/u011237384/article/details/76800056</guid><author>u011237384</author><pubDate>Mon, 07 Aug 2017 09:06:30 +0800</pubDate><description><![CDATA[EM……凸包的题（暴力也可以写）题目大意：
  给你若干个正三角形，正方形，圆形，求包围他们一周所需要的最小长度。用凸包写完特殊判断下端点情况即可。
用的是Graham扫描算法#include <iostream>
#include <bits/stdc++.h>
using namespace std;
const double PI = acos(-1.0);double eps=1e-10;]]></description><category></category></item><item><title><![CDATA[2017 Multi-University Training Contest 4 1003 || HDU6069]]></title><link>https://blog.youkuaiyun.com/u011237384/article/details/76674753</link><guid>https://blog.youkuaiyun.com/u011237384/article/details/76674753</guid><author>u011237384</author><pubDate>Fri, 04 Aug 2017 11:56:24 +0800</pubDate><description><![CDATA[哆啦A梦传送门：http://acm.hdu.edu.cn/showproblem.php?pid=6069
题目大意：给出l，r，k，计算l到r每个数的k次方的因子个数的和官方题解：
  设n=pc11pc22……pckkp_1^{c_1}p_2^{c_2}……p_k^{c_k}，则d（nk）=(kc1+1)(kc2+1)……(kcm+1)d（n^k）=(kc_1+1)(kc_2+1)……(kc_]]></description><category></category></item><item><title><![CDATA[【AC梦工厂】2017 Multi-University Training Contest 3 1003|| HDU6058]]></title><link>https://blog.youkuaiyun.com/u011237384/article/details/76575642</link><guid>https://blog.youkuaiyun.com/u011237384/article/details/76575642</guid><author>u011237384</author><pubDate>Wed, 02 Aug 2017 12:45:58 +0800</pubDate><description><![CDATA[先吐槽一下多校的难度  
膜拜清华大神AK传送门：http://acm.hdu.edu.cn/showproblem.php?pid=6058官方题解：
  我们只要求出对于一个数x左边最近的k个比他大的和右边最近k个比他大的，扫一下就可以知道有几个区间的k大值是x. 
  我们考虑从小到大枚举x，每次维护一个链表，链表里只有>=x的数，那么往左往右找只要暴力跳k次，删除也是O(1)的。 
  时间]]></description><category></category></item><item><title><![CDATA[前向星——附带欧拉回路求解]]></title><link>https://blog.youkuaiyun.com/u011237384/article/details/75422926</link><guid>https://blog.youkuaiyun.com/u011237384/article/details/75422926</guid><author>u011237384</author><pubDate>Wed, 19 Jul 2017 17:16:18 +0800</pubDate><description><![CDATA[前向星
用head[i]记录以i为边集在数组中的第一个存储位置
通过struct的next找到下一个位置，是一个变形的邻接表
时间空间复杂度都很小，占用很少的额外空间，是目前建图和遍历效率最高的储存方式  推荐文章：http://blog.youkuaiyun.com/acdreamers/article/details/16902023
构建与遍历代码：int head[Max_N]={-1};
struct]]></description><category></category></item></channel></rss>