自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(17)
  • 收藏
  • 关注

原创 重邮第八届ACM大赛-决赛题解报告

A. 果姐姐的项链贪心、构造长度为N的01序列一共有2N2^N种,所以L的理论最大值为2N2^N 当N比较小时,尝试暴力构造,找规律发现:答案具有000…0……111…1的形式(N个0+中间部分+N个1)尝试贪心构造:初始化序列为11…100…0(N个1+N个0),并标记其中已经出现过的序列尝试在末尾加0,若新组成的序列(当前序列的后N-1个字符+0)未出现,则确定加0,并标记该序列出现过

2017-04-23 18:49:16 2437

原创 重邮第八届ACM大赛-预赛题解报告

A. a x b (Ⅰ)签到题学会如何处理多组数据注意爆intcodeB. 多关键字排序水题读入的时候可以考虑使用scanf(" (%d,%d)", &x, &y);排序可以直接使用std::sort,当然也可以自己写,但冒泡排序等高复杂度算法无法通过该规模的数据;考虑使用快排、归并排序等高效算法可以自己写结构体,当然这里推荐使用std::pair;如果自己写结构体,需要写cmp函数或

2017-04-16 23:24:24 2103

原创 HDU 5838 Mountain(状压DP+容斥)

[题目链接][题意] 给定n*m(1<=n,m<=5)的网格,每个格子的高度各不相同,且在1到n*m内。 定义一个格子为山谷,当且仅当它的高度小于周围8格(界外高度看成无穷大)。 现在给定一张地图,其中’X’表示山谷,’.’表示非山谷,问满足这个地图的高度分布情况总数。[分析] 由于n,m<=5,山谷最多只有9个,容易想到状压每个山谷“高度是否确定”我们从小到大的确定山谷高度,设dp[i][

2016-09-01 06:13:44 673 1

原创 HDU 5800 To My Girlfriend(计数DP)

[题目链接][题意] 有n个物品,每个物品的价值为aia_i,设f(i,j,k,l,m)f(i,j,k,l,m)表示从n个物品中取若干个,满足第i,j个物品必取,第k,l个物品必不取,价值总和为m的方案数,求 ∑i=1n∑j=1n∑k=1n∑l=1n∑m=1sf(i,j,k,l,m)(i,j,k,l各不相同)\sum_{i=1}^n\sum_{j=1}^n\sum_{k=1}^n\sum_{l

2016-08-09 03:12:49 501

原创 HDU 5785 Interesting(回文树)

[题目链接][题意] 给定字符串s,找所有的三元组i,j,k满足s[i,j]以及s[j+1,k]均为回文串,求所有满足条件的三元组的i*k的和。[分析]回想起以前刷回文树专题时做过的一道题HDU 5157,求不重叠回文子串的对数,做法类似回文树中,num[now]表示添加该字符后新产生的回文串个数,即以该字符为结尾的回文串个数,num[now] = num[fail[now]]+1 正着跑一次,

2016-08-09 02:04:05 526

原创 HDU 5745 La Vie en rose(DP+bitset优化)

[题目链接][题意] 给定模式串和主串,模式串可以交换相邻位子的字符,且可以交换多个位子,但每个字符只能被交换一次。问模式串能否通过该变换与主串匹配?输出主串中每个位子的匹配结果,1为可匹配,0为不可匹配。[分析] 赛上被这道题坑哭了,看到那么多队过自己却没有思路,好不容易想到个方法把样例过了却T了。最后走投无路写了个暴力就A了,1500ms,吓死。 不过赛后貌似加强了数据,卡了暴力,丧病。

2016-07-25 18:01:58 515

原创 HDU 5732 Subway(树hash)

[题目链接][题意] 一个城市的铁路线构成一棵树,但是现在车站(顶点)的名字变了,但是铁路线(树)的结构没有变。现在给定原来的结构和现在的结构,确定新旧顶点间的对应关系。[分析] 树的同构判断 自己没什么想法,看题解说的树hash,方法应该很多(都不会 只记得以前做过一道题,hash了字典树,方法也是抄的别人的。。。 所以这里直接采用了题解提供的策略,即: 先求树的中点(有2个中点的都试

2016-07-25 14:43:53 710 2

原创 HDU 5725 Game(计数)

[题目链接][题意] n*m的棋盘上有一些守卫,守卫的攻击范围是一行一列以及周围8格,不会有一个守卫出现在另一个守卫的攻击范围内。现在任选不含守卫的起点和终点,求不经过守卫的最短路的平均值。[分析] 根据守卫间的相互限制关系,可以发现任意两点间的最短路最多只会被一个守卫影响,即最多只需要绕行2格即可。 所以可以分为2步计算: 1.计算出所有合法点对间的曼哈顿距离之和 2.计算出需要绕行的点

2016-07-24 14:23:07 591

原创 HDU 5731 Solid Dominoes Tilings(轮廓线DP+容斥)

[题目链接][题意] 用1*2的多米诺骨牌完美覆盖n*m的网格,且不存在水平或竖直分割线,求方法数[分析] 若没有分割线的限制,则此题变为了轮廓线DP入门题POJ 2411 加入了限制条件后,则要减去不合法的情况。但分割线的组合很多,所以考虑用容斥定理,加加减减。。。初步想法: 将无限制的算法稍加修改(行转移时,不转移排满的情况),则得到了无行分割线的方案数 枚举列分割线,使用容斥定理统计

2016-07-24 01:05:24 575

原创 HDU 5729 Rigid Frameworks(组合计数,递推)

[题目链接][题意] 赛上就没读懂过题意… 通过转换将问题变为求两个点集大小分别为n和m的连通二分图个数,其中每条边可以有2种选择(主副对角线)[分析] 如果每条边只有1种选择,那就变成了Project Euler 434,所以我们先来考虑这个问题 对于n,m点的二分图,若不考虑连通性的限制,那么总方案数为2n∗m2^{n*m} 只要再减去不连通的情况即可 如何不重复不遗漏的计算出不连通

2016-07-21 09:25:32 979 1

原创 HDU 5730 Shell Necklace(FFT+分治)

[题目链接][题意] 有一串长度为nn的贝壳项链,装饰连续的ii颗贝壳有aia_i种方案。在每颗贝壳都仅被装饰一次的情况下,有多少种装饰方案?[分析] 设装饰前ii颗贝壳的方案数为f(i)f(i) , 则容易得到递推式f(i)=∑ij=1f(i−j)∗ajf(i) = \sum_{j=1}^i{f(i-j)*a_j} 朴素的计算复杂度为O(n^2),肯定T观察递推式的形式,考虑用FFT+分治进

2016-07-21 00:30:40 660

原创 HDU 5728 PowMod(数论,欧拉函数的各种性质)

[题目链接][题意]k = ∑i=1mϕ(i∗n)%1000000007k \ = \ \sum_{i=1}^m\phi(i*n) \% 1000000007 \\ 其中n为无平方因子的数,求 ans = kkkk...k%pans \ = \ k^{k^{k^{k^{...^{k}}}}} \% p \\[分析]n无平方因子说明n可以表示为 n =p1∗p2∗...∗pl (pi≠pj

2016-07-20 15:46:51 1687

原创 HDU 5727 Necklace(玄学+状压DP 或 匈牙利)

[题目链接][题意] 2n颗宝石,n颗为阴,n颗为阳,阴阳交错的组成一个圈(圆排列) 给定一系列阴阳宝石对,如果在排列中这两颗宝石相邻,阳宝石就会失去能量 求如何排列能让最少的阳宝石失去能量,输出最少的宝石数目[分析] n比较小(n<=9n <= 9),自然想到状压 但如果交错的枚举阴阳宝石,状态不好表示,也不好转移 于是想到先固定阴宝石的排列,再状压dp求阳宝石的最优放法 朴素做法

2016-07-20 02:44:09 571

原创 HDU 5733 tetrahedron(三维几何)

[题目链接][题意] 给定四面体的四个顶点,求内切球的球心和半径 若内切球不存在,输出”O O O O”[分析] 各种公式~设四面体四个顶点坐标分别为 (xi,yi,zi)(x_i,y_i,z_i),与之相对的面的面积为sis_i,四面体体积为VV,则有 四面体内心(内切球球心)坐标公式: ⎧⎩⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪xyz===s1x1+s2x2+s3x3+s4x4s1+s2+s3

2016-07-19 23:30:51 931

原创 HDU 5726 GCD(线段树+预处理)

[题目链接][题意] 给定数列an,每次询问区间[l,r]上所有数的gcd,并求gcd为此值的区间有多少个?[分析] 区间gcd用线段树很好维护 关键在于如何求gcd为某值的区间个数 我们固定右端点r,左端点从1移动到r,求得一个gcd序列 容易发现,这个序列是非增的,且可以分为许多段数值相同的区间段 可以证明,这样的区间段个数不超过log2(n),因为每次gcd值下降时至少降为原来的一

2016-07-19 22:34:05 780

原创 HDU 5724 Chess(博弈,SG函数)

[题目链接][题意] 在一个n*20的棋盘上,有一些棋子,两人轮流操作。每次操作可以任选一个棋子,把它移动到其右边第一个空的位子。不能操作者输。给定棋盘的状态,判断谁赢?[分析] 由于棋子只能向右移动,所以每一行可以看成独立的游戏 由SG定理,整个游戏的SG值为每个子游戏的xor和 由于一行只有20个位子,总状态数为2^n,可以状压表示,而每个状态的后继也不超过20个,可以枚举求出所有状态的

2016-07-19 21:06:50 480

原创 HDU 5723 Abandoned country(最小生成树 + 树形DP)

[题目链接][题意] n座城市m条路,每条路连接2个城市,路的长度各不相同,修建一条路需要的代价等于其长度。求: 1.使所有城市连通需要的最小代价 2.在最小代价下,任取2个城市,求他们之间最短路的期望值[分析] 1.是比较裸的MST,直接上kruskal 由于边权各不相同,MST的形态应该是固定的 2.用树形DP求出所有点对的路径和,再除以点对的个数n*(n-1)/2,就是期望值

2016-07-19 20:18:41 464

空空如也

空空如也

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

TA关注的人

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