关闭

[bzoj3492]Binary Dodgeball

结论我把乘2^k变成除以的话和原游戏当然是等价的。 这样的话我们把每个数二进制都写出来,每次就是去掉末尾几个0。 按照除lowbit部分分组,不同组之间互相独立。 每组的游戏可以这样描述: 有一群石子堆,每次从一个石子堆拿走至少一颗石子,若存在两堆相同的石子堆,则一起移走。 没有后面那个的话很容易知道就是nim游戏。 但其实我们可以把移走的两堆绑在一起,那么一个人操作其中一堆,另一个人就...
阅读(89) 评论(0)

[51nod 1587]半现串

题目描述http://www.51nod.com/onlineJudge/questionCode.html#!problemId=1587AC自动机上的DP把S所有长度是d/2的提出来造个AC自动机。 然后做数位DP,用一维状态表示匹配到AC自动机上哪个节点。 匹配成功状态不要转移。 于是可以计算出不匹配的数量。#include #include #in...
阅读(100) 评论(0)

[51nod 1587]半现串

题目大意有两个串S,T。T的长度是d。我们说T在S中半现的条件是当T的某一个长度为 ⌊d/2⌋ 的子串是S的一个子串。(子串是在原串中连续出现的一段字符串)。 现在给定一个原串s,另外给出x,y,他们都只包含数字字符,问区间[x,y]中在s中半现的数字有多少个。经典套路先转化为补集问题。 将S所有长度为d/2的串弄个AC自动机,然后做数位DP,f[i,j]表示做到第i位匹配到状态j。 匹配成功...
阅读(148) 评论(0)

[51nod1301]集合异或和

题目描述已知两个整数N与M,你需要构造两个整数集合X与Y,且需要满足以下要求: (1)对所有的xi∈X,满足1<=xi<=N;对所有的yj∈Y,满足1<=yj<=M; (X与Y可以为空集) (2)X∩Y=Φ;(但不要求集合X与Y的元素个数,只要两者没有交集即可)不妨设构造后的集合X含有n个元素,而集合Y有m个元素,令 A=x1 xor x2 xor x3 xor … xor xn, B=y1...
阅读(184) 评论(0)

[51nod 1425]减减数

题目描述初始给定一个整数n。每次可以对其做一个操作,这个操作是将n减去他其中的某一位。得到新的一个数字n’,然后继续操作,直到他变成0为止。 比如24这个例子,24 → 20 → 18 → 10 → 9 → 0题解具体看这题小W的数字#include #include #include #define fo(i,a,b) for(i=a;i<=b;i...
阅读(242) 评论(0)

小W的数字

前言%%%dwx %%%dwx %%%dwx %%%dwx %%%dwx题目描述记忆化搜索如果设step(n)表示n减到0的最小操作次数,显然step有单调性。 我们设f[mx,n]表示把n减到0的最小操作次数,mx表示的是比n最高位还高的那些位的最大值。 现在我们可以固定最高位,把剩余位减到0,也就是递归计算,返回二元组(cost,dp)表示操作次数为cost,最终还可以额外减掉一个d...
阅读(198) 评论(0)

求生之路

题目描述历经千辛万苦,pty终于打开了金字塔的锁。稍稍适应了外面刺眼的光线,pty抬头望去,眼前竟是一条不见尽头的狭长通道。这时候背后响起了奇怪的窸窣声,原来是金字塔内绿眼黑身的怪物追了过来。Pty来不及多想,便拼命往前奔去。通道狭窄又曲折,时不时还有断裂,不过Pty凭借TempleRun练成的娴熟技巧轻松通过。眼看着离怪物们越来越远时,一棵参天大树突然耸立在了道路中央,大树摆了摆身子,用苍老的声音...
阅读(210) 评论(0)

[bzoj4513][SDOI2016]储能表

题目大意求∑n−1i=0∑m−1j=0max(i xor j−p,0)\sum_{i=0}^{n-1}\sum_{j=0}^{m-1}max(i\ xor \ j-p,0)数位DP首先先把n和m都减一。 接着分解成二进制。 设f[i][s1][s2][s3][s4]表示做到第i位,此时有多少二元组(a,b)满足以下条件: s1=0,目前a已经小于n。s1=1,目前a等于n。 s2=0,目前...
阅读(740) 评论(0)

[GDKOI2016]QT与泰剧

题目大意给定高精度数S和T,求出T+1~S中所有满足对模3与S同余且每一位皆不为质数的数的个数。数位DP裸的。#include #include #include #define fo(i,a,b) for(i=a;i=b;i--) using namespace std...
阅读(611) 评论(0)

[bzoj3530][SDOI2014]数数

题目描述求不大于N的所有正整数中有多少个满足以下条件的数:给定字符串集合S,把该数当作字符串(没有前导0),集合S中没有任意一个字符串是该字符串的子集。 N的长度不超过1200,集合中所有字符串长度和不超过1500。AC自动机上的DP将集合内所有字符串建出一颗AC自动机。 那么,我们需要预处理一个这样的next[i,j]表示在结点i上接下要走j的话会调整到的结点是什么。(即预处理所有可能出现的调...
阅读(338) 评论(0)

光棍

题目大意求l~r间所有不满足以下三个条件的所有数的平方和。 1、某一位为a。 2、是a的倍数。 3、各位数字之和是a的倍数。 l,r<=10^18。数位DP用f[i][j][k]表示一个状态,这个状态是当前做到第i位,数字和除以a的余数为j,除以a的余数为k。再加一维0..2分别表示个数、和、平方和。 那么转移方程显然,且枚举的时候不要枚举a。 注意到要求l~r之间的,这个可以转化为1~...
阅读(194) 评论(0)
    个人资料
    • 访问:209371次
    • 积分:9123
    • 等级:
    • 排名:第2025名
    • 原创:689篇
    • 转载:4篇
    • 译文:0篇
    • 评论:180条
    最新评论
    文章分类