自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

taotao 的大学墓志

keep thinking! keep learning!

  • 博客(324)
  • 资源 (1)
  • 收藏
  • 关注

原创 loj #6164. 「美团 CodeM 初赛 Round A」数列互质(莫队 数据结构 链表hash)

题目链接#6164. 「美团 CodeM 初赛 Round A」数列互质询问 l,r,kl,r,k 中次数的次数与互质的个数.分析维护区间中数的个数,这一眼看过去不就是 莫队吗,可以看到对于次数的次数最多只有n−−√\sqrt n 种因此我们可以暴力处理每次查询,用一个链表维护次数的次数就好复杂度O(nn−−√+Qn−−√logn)O(n\sqrt n+ Q\sqrt nlog n)开始用hash

2017-11-03 18:29:32 444

原创 loj 2013. 「SCOI2016」幸运数字(线性基+lca倍增)

题目连接2013. 「SCOI2016」幸运数字 给一颗树,每个点有一个值aia_i,求u∼vu\sim v路径上异或最大值分析涉及异或的东西,就是线性基了,如果你对这玩意不熟,可参考这个Sengxian’s Blog然后由于线性基合并是log2Vlog^2V 因此,可以暴力合并,也就是采用倍增思想,计算u,vu,v 到公共祖先路径上的线性基,然后合并就行了Ac code#include <bit

2017-11-03 18:16:48 360

原创 loj 6062 (hall定理+ 线段树)

题目链接loj 6062. 「2017 山东一轮集训 Day2」Pair给出一个长度为nn的数列{ aia_i }和一个长度为mmm的数列{ bib_i },求{ aia_i }有多少个长度为mm的连续子数列能与{ bib_i }匹配分析 这个题目和今年西安的k 题非常相似……首先bib_i 的孙序不影响匹配,有hall 定理,二分图存在完全匹配当且仅当对于,集合X∀X,|N(X)|≥|X|X\fo

2017-10-31 18:35:03 1063

原创 bzoj 4017 小Q的无敌异或(所有子区间异或的和 与和的异或)

题目链接 小Q的无敌异或 长度为 nn 的序列 求所有子区间的异或的和% 998244353,与所有子区间的和的异或。分析感谢skywalkert 提供题解 按位计算就好AC code#include <bits/stdc++.h>using namespace std;#define ms(x,v) (memset((x),(v),sizeof(x)))typedef long long

2017-10-31 17:37:38 771

原创 PAT 甲 1014. Waiting in Line (30)(优先队列)

题目链接1014. Waiting in Line (30)分析感觉这些题都好水的~~,直接优先队列模拟就好了AC code#include<bits/stdc++.h>using namespace std;#define se second#define fi first#define mp make_pairconst int maxn = 1e3+10;const int MAX

2017-10-25 23:17:47 361 1

原创 codeforces 883 I. Photo Processing(dp+二分)

题目链接I. Photo Processing分析 这题比赛的时候没做出来,原来就是很简单的二分啊,只是check的时候用到dp. dp[i]:将1~i划分成满足条件的区间,能划分最远的地方,那麽显然n处若dp[n]==n则当前解满足,答案变小AC code#include <bits/stdc++.h>using namespace std;const int maxn = 3e5+10;

2017-10-23 17:30:34 1132

原创 HDU 5952 2016沈阳现场赛E Counting Cliques (团计数暴力)

题目链接Count Cliques分析 直接上BornKer好像不行了,各种T,还不如直接暴力AC code#include<bits/stdc++.h>#define pb push_back#define mp make_pair#define PI acos(-1)#define fi first#define se second#define INF 0x3f3f3f3f#de

2017-10-22 21:16:22 393

原创 codeforces 875C - National Property(图表示关系 2sat)

题目链接875C - National Property分析官方 但这题也有2sat 的做法AC code#include<bits/stdc++.h>#define pb push_back#define mp make_pair#define PI acos(-1)#define fi first#define se second#define INF 0x3f3f3f3f#d

2017-10-22 19:40:12 692

原创 PAT (甲)1004 Counting Leaves (30)(dfs)

PAT

2017-10-20 22:03:43 1335

原创 Introduction to Optimization(四): 拟牛顿法

本节介绍:hessian matrix 近似DFP算法bfgs算法hessian matrix 近似牛顿法的基本思路是用二次函数来局部逼近目标函数 ff 并解近似函数的极小点作为下一个迭代点,迭代公式 但是牛顿法的缺陷是需要

2017-10-19 17:51:48 614

原创 codeforces 871C. Points, Lines and Ready-made Titles (与图相关的计数)

题目链接C. Points, Lines and Ready-made Titles分析 可以发现如果将相邻两个点(X,或者Y坐标相同)用一条边连起来,建一个无向图,那麽就可以单独考虑连通分量了,而一个连通分量中可以发现如果没有环,那麽答案是  2X+Y−1 X:=连通图里不同的X坐标 Y:=同上 2^{X+Y}-1\\ X:=连通图里不同的X坐标 Y:=同上   如果有环  2X+Y

2017-10-19 16:21:50 422

原创 Introduction to Optimization(三): 共轭梯度算法

基本概念共轭: QQ 是一个对称实矩阵,对于方向向量 d1,d2,…dm,∀i≠j,dTiQdj=0d_1,d_2,\dots d_m,\forall i\neq j,d_i^TQd_j =0 则他们关于QQ 共轭Q正定 如果对于矩阵Q,Q>0Q,Q>0,若一组向量d1,d2,…dm,m≤n−1d_1,d_2,\dots d_m,m\le n-1,关于QQ 共轭,则他们线性无关。(直接用定义

2017-10-18 10:46:28 1106

原创 HDU 5534 Partial Tree(dp 背包)

题目链接Partial Tree分析 总共 2(n−2)2(n-2) 度, 度数为 i 价值是f[i], 先给每个点一度,那麽剩余 n-2 个点分配就好,这不就是背包吗 但是很奇怪的是,我用滚动数组倒着dp的时候wa了????为什么???AC code#include<bits/stdc++.h>#define pb push_back#define mp make_pair#define P

2017-10-13 19:14:37 279

原创 Introduction to Optimization(二):基于梯度的优化

这篇文章主要讲:梯度下降梯度最速降梯度下降相信这个对于大部分人来说并不陌生,听过吴恩达公开课的都知道(escape….) 我们知道梯度方向是函数下降最快的方向(书上有证明).梯度下降就是沿着梯度负方向构造一个点: xx−αxx\pmb x-\alpha \pmb x (粗体表示列向量),将其泰勒展开我们有 f(xx−αxx)=f(xx)−α||∇f(xx)||2+o(α)f(\pmb x

2017-10-12 23:06:34 652

原创 Introduction to Optimization(一):一维最优化方法

最近经常用到scipy.optimize 想来一直把它当成黑箱实在是不舒服,所以还是决定去了解一下其中的算法,幸来看见《an Introduction to Optimization》这本书里讲了很多优化方法。便于让自己燕过流痕故这里做个笔记.仅用于个人回顾.这里是正文……..第7章: 一维搜索方法. 这里主要说一下这个黄金分割方法原来这就是以前听ACM大佬说的3分.算法描述对于函数: f(x

2017-10-12 19:49:04 2262

原创 2016 四川省赛F. Floyd-Warshall(LCA + brute force)

这是我第一次使用输入输出外挂,没错,第一次…….. 被卡成傻逼了.题目链接Floyd-Warshall分析题解icpc_camp 上面已经写的很清楚了. https://post.icpc-camp.org/d/576-2016-hints  只需要将至多200个链接非树边的点离散出来,然后在对这两百个点做bfs找出以他们为起点的单元最短路就好了. 不过用并查集来找非树边会T成撒比,找了几份网

2017-10-11 21:09:17 391

原创 2016 四川省赛 H AroundtheWorld(BEST定理)

题目链接BEST 定理分析是时候好好学一波BEST定理了,这东西就是拿来专门统计有向图的欧拉回路计数的 BEST定理 和这里不加证明的给出BEST定理,有向图G,di=d−i=d+iG,d_i = d_i^-=d_i^+的欧拉回路数目为 Tv∗∏i∈V(G)(di−1)!T_v*\prod_{i\in V(G)}(d_i-1)! i其中TvT_v 为任意顶点vv 的 in_tree 或者

2017-10-09 20:33:12 527

原创 2016 JAG E Similarity of Subtrees(hash)

迷一样的hash.....题目链接2016 JAG E Similarity of Subtrees分析啊这位大佬的图非常到位hash函数的定义方式是将深度为 dd 的顶点给一个权重pdp^d, 取 pp 为素数就好AC code#include<bits/stdc++.h>#define pb push_back#define mp make_pair#define PI acos(-1)

2017-10-08 20:49:33 361

原创 HDU 5925 Coconuts(二维离散化权值统计 经典)

题目链接这是2016 ccpc 东北的银牌题,很经典. Coconuts分析直接二维离散化,然后记录下各压缩了多少行和列,将其权值相乘便是离散化的图里的权重. dfs or bfs 统计一下就行了.//Problem : 5925 ( Coconuts ) Judge Status : Accepted//RunId : 22331126 Language : G++ Aut

2017-10-08 20:16:55 506

原创 python 字符串与二进制串之间的转化

最近学习密码学,经常要在二进制位上操作,加完密以后又要把二进制串转化回去,还要中英文兼顾,就只好用’utf-8’了,’utf-8’转化为二进制串是很容易的事情,但是二进制串转回去就有点麻烦了,因为解码好像只能是bytes对象,不能是字符串,这里记录一个简单的方法bitarrayfrom bitarray import bitarraybitarray对象可以轻松将二进制串转化为bitarray对象

2017-10-07 23:08:00 22160 3

原创 HDU 5528 Count a * b 2015 长春现场赛(积性函数)

题目链接Count a * b分析这是很有意思的积性函数问题反过来定义 h(m)=m2−f(m)=∑a,b[a∗b%m=0]=∑a=1,bmgcd(a,m)|b=∑a=1mgcd(a,m)=∑d|md∗ϕ(m/d)\begin{align}h(m) &= m^2 - f(m)\\&=\sum_{a,b}[a*b\%m=0]\\&=\sum_{a=1,b}^m gcd(a,m)|b\\&=

2017-09-29 12:37:06 343

原创 HDU 5517 2015沈阳现场赛(二维树状数组)

题目链接Triple题目分析首先分析集合C中的不同点不会超过10510^5个,因为每个ee 只会对应唯一的一个aa,因为我们只需要对每个bb存一个最大的a就行. 然后将CC中的点集排序,重大到小排序,重大到小遍历,用二维树状数组判断 ≥(c,d)\ge (c,d) 的点的个数,若多于1个则说明这个点不符合情况,否则符合条件,因为在二维树状数组中的点的a都比当前点大,所以一次少过去就好.注意计算重点

2017-09-25 22:55:29 307

原创 2017北京网络赛hihocoder 1580 matrix(dp)

题目链接1580 : Matrix分析和最大子矩阵和类似,扩展一维就好了. 详细分析请见这位老歌写的blog 注意特判Ac code#include<bits/stdc++.h>#define pb push_back#define mp make_pair#define PI acos(-1)#define fi first#define se second#define INF

2017-09-25 21:29:29 327

原创 HDU The Closest M Points(KD-tree模板题)

题目链接HDU 4347 The Closest M Points分析kd-tree模板题AC code#include<bits/stdc++.h>#define pb push_back#define mp make_pair#define PI acos(-1)#define fi first#define se second#define INF 0x3f3f3f3f#defi

2017-09-25 16:13:06 651

原创 数论经典问题:与x互质的数的和

问题xx已知,求 ∑gcd(a,x)=1a\sum_{gcd(a,x)=1}a 我们知道这样的 aa 只有ϕ(x)\phi(x) 个,我们想能否用经典的gauss求等差数列的方法来解决这个问题呢? s设 gcd(a,x)=1gcd(a,x)=1,那麽有 gcd(x−a,x)=1gcd(x-a,x)=1因此对于任意的数 a,gcd(a,x)=1a,gcd(a,x)=1 则有 对应的x−a,满

2017-09-23 11:42:09 1312

原创 2015沈阳现场赛F (HDU 5514)(经典问题 数论phi函数)

题目链接Frogs分析首先我们可以发现能跳到的数一定满足 存在i,gcd(ai,m)|x i,gcd(a_i,m) | x,即存在 ii gcd(ai,m)|gcd(x,m)gcd(a_i,m) | gcd(x,m) 将 x,按照 gcd(x,m)=dx,按照 gcd(x,m)=d 分类,最多有 mm的因子个集合,那麽每个集合的和为 ∑gcd(x,m)=dx=d∗∑gcd(x/d,m/d)

2017-09-23 11:33:51 300

原创 2017数学建模总结

2017年数学建模第一天晚上选题,看了看A,看了看B,B题分析性太强,属于应用统计,数据分析类,和队友商量着战略性放弃,然后就开始查资料,搞东西了,突然回忆起以前姜起源的书上貌似讲过CT成像这种东西,翻出来看果然有这玩意儿。然后看了看题目发现精度是4位小数,似乎可以暴力枚举答案

2017-09-19 01:47:30 8111 1

原创 python爬虫自动提交HDU并获取AC状态(p3+request+Beatifulsoup)

说明今天下午搞了好一会儿,源于上周日的沈阳网络赛,竟然可以枚举答案交1024发……想到如果自己能写个爬虫自动提交那该多好啊,源于这总冲动自己今天花了一个下午实现了这个小玩意儿.效果图实现过程其实主要是3个步骤:login 登录submit 提交代码report status 范围状态(AC没有?)首先是登录,就是要把你的id 和 密码post 到HDU ,我们可以打开HDU 的主页然后分析提

2017-09-13 22:36:24 897

原创 HDU 4109 Instrction Arrangement(差分约束)

题目链接Instrction Arrangement分析这是一道简单的差分约束的题目,关于差分约束,这个blog写的很好 设tit_i 表示第i条指令完成的最短时间,那麽对于一个约束x,y,zx,y,z有ty−txtx−ty≥z≤z\begin{align}t_y -t_x&\ge z\\t_x - t_y &\le z\end{align} 这不就是差分约束的标准形式吗,要求完成的最

2017-09-13 21:56:28 345

原创 poj 3317 Stake Your Claim(极大极小搜索经典 a-b+剪枝+记忆化dp)

poj 3317 Stake Your Claim分析哇这题也算把我卡得够死了,怪我没能正确理解所谓a-b剪枝的姿势. 其实alpha-beta剪枝不用也是可以过的,非得我不用才找到了错误首先这道题只有10种选择,每种选择有3种状态,共310<600003^{10} <60000,因此直接记忆话搜就行了.用3进制状压一下.然后就是枚举空点的时候也可以状压一下这样枚举快.AC code//Source Cod

2017-09-12 00:34:53 1964

原创 kd-tree : k近邻查询和范围查询

想象一下我们有如下两个任务:我现在想骑一辆小黄车,我想查找离我最近的k辆小黄车.找到百度地图中显示在屏幕上区域中的所有酒店这两个任务均可以用kd-tree来解决 kd-tree 主要两个用途:查询离某个点的最近的kk 个邻居,搜索某个区域内的所有点.后者在计算几何中称为范围查询,例如查询某个平面区域内的点的个数.kd-tree是什么玩意儿kd-tree就是高维平衡树…… kd-tre

2017-09-11 16:07:13 11702 4

原创 STL nth_element神器

这周在看kd-tree,苦于找中位数写起来太过麻烦,去观摩了一下其他大佬的代码,竟然还有nth_element这种东西。 http://www.cplusplus.com/reference/algorithm/nth_element/ nth_element(first,nth,last) first,last 第一个和最后一个迭代器,也可以直接用数组的位置。 nth,要定位的第n

2017-09-08 13:52:19 6845

原创 ACM概率期望dp刷题总结

这个周刷了很多概率期望有关的dp题目,缘起2016青岛D题和取log的神操作题HDU 5988 2016青岛区域赛 (最小费用流)这类题目没有固定的模板,而且概率可以很容易插入一些经典模型,比如下面的 TSP。最小费用流。 我刷的这部分题目,无一例外均可用dp解决,主要是找到状态,很多题目都可以抽象成马尔科夫链下面记录一下刷的经典题目B - Discovering Gold 一排1到n的格子,每个

2017-09-07 22:10:48 3628

原创 codeforces 854 D. Jury Meeting(dp水题)

题目链接D. Jury Meeting分析昨晚打正式赛的时候太急了,代码写的有点毒,下了课后一看,立马发现bug…..将去的航班表和返回航班表分别按照时间最小和最大排序,对于去的航班来说,挨个扫描过去,对每一个人维护当前的最小花费,若时间总的航班满足等于 nn 说明这一天可以作为起始时间,更新这一天的花费dp[d]=now_ansdp[d] = now\_ans,now_ansnow\_ans 记录

2017-09-07 12:10:53 586

原创 线性规划:单纯形算法

作者 dylanFrank(滔滔)转载请联系作者 原文链接:http://blog.csdn.net/Dylan_Frank/article/details/77876006这里简要总结一下线性规划的单纯形算法,做如下几个方面的总结,其余以后再来填坑.几何表示标准型的代数解法其他情形与标准型的互换退化情形几何表示先看这样一个问题 我们很容易用下面的数学语言来

2017-09-07 00:18:58 9668 1

原创 HDU 5988 2016青岛区域赛 (最小费用流)

题目链接HDU 5988分析这题一看就是一个网络流的模板题,不过需要注意建边的费用!! 首先很容易想到,s与每个区域连一条边,费用为0,容量为 sis_i,区域与 tt 连一条边 容量为 bib_i 费用为0。然后就是考虑区域与区域之间的连边了。我们想象一下最终的分配方案,假设对于边 eije_{ij} 来说,我们让 kijk_{ij} 个人通过,那么eije_{ij} 不被破坏的概率是 (1−p

2017-09-06 16:46:46 2303

原创 codeforces 851 D. Arpa and a list of numbers(前缀和+bruteforce)

题目链接D. Arpa and a list of numbers分析是我太天真了,暴力枚举素数还是计算还是有问题的,复杂度太高,不过你可以发现只需要再处理一个前缀和就可以了….下面进入正题首先显然可以想到枚举素数,那么最终就是对于每个素数的计算问题了,如果暴力计算的化肯定是要超时的,其实我们可以在O(1)O(1) 计算花费.对于素数 kk 来说,不为kk 的倍数的数都要加到kk 的倍数,所以只需要

2017-09-05 09:11:21 772

原创 codeforces 840B. Leha and another game about graph(构造,dfs)

题目链接B. Leha and another game about graph分析思维题,仔细分析题意其实一点也不难。详情见官方文档ac code#include<bits/stdc++.h>#define pb push_back#define mp make_pair#define PI acos(-1)#define fi first#define se second#defin

2017-08-28 20:51:08 706

原创 codeforces 840 C. On the Bench(多重集合的交错排列经典题目)

题目链接C. On the Bench分析这是一道多重集合交错排列的经典题目,经典的题意是这样的: 设集合 AA 有 n1个a1,n2个a2,...,ni个ain_1 个 a_1,n_2个a_2 ,...,n_i 个a_i 问使其相邻两个数不相同的排列有多少种.我们先来解决这个经典题目,然后再来解决codeforces的这个题目. 可以用 dp+容斥做 先来解决一个简化的问题 设 dp[

2017-08-28 11:15:29 1288

原创 deeplearning Note:Optimization

作者:dylanFrank(滔滔)这是deeplearning.ai的第二周,这周讲的是优化,这周其实有很多东西并不是很懂,个人结合了《deeplearning》 这本书来自己理了一下,同时也本着迅速入门的想法就没有想那么多,现将其知识整理如下:mini-batch gradient descentmomentumRMSpropadamlearning rate decay本质上来说,

2017-08-27 00:49:00 2192

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除