Online Judge:从Topcoder搬过来,具体哪一题不清楚 Label:状压Dp+前缀和优化 题目描述 给定两个数A和N,形成一个长度为N+1的序列,(A,A+1,A+2,...,A+N-1,A+N). 每次操作可以把第i个数上的第x位数字删除,形成一个新的数字. 每个数字可以操作任意次,但不可以全部删完. 求有多少种方案,使得最后的序列中数字是单调不递减的. 两种方案是认为不同,如果第i个数的第x位在一个方案中被删除,在另一个方案中,没有被删除. Tip:注意一个数字不能所有位全部删…
C. Pollywog 题目描述 原题题目链接.题目大意为:有$x$只蝌蚪,在$n$个石头中的最左端的$x$个石头上,这$n$个石头是在同一直线上的.每一次只能最左边的一个蝌蚪进行跳跃,并且只能跳$1$至$k$步,跳$i$步要花费$c_i$的体力.在蝌蚪跳跃时,是不能跳到已有蝌蚪的石头上.在这$n$个石头里面有$q$个石头是特殊的石头,跳上这$q$个石头中的第$p$个要额外花费$w_p$的体力值.问当所有蝌蚪跳到最右边的$x$个石头时的最小体力值. 思路 首先,根据题意我们能知道所有的蝌蚪都一定…
一. 位操作基础 基本的位操作符有与.或.异或.取反.左移.右移这6种,它们的运算规则如下所示: 符号 描述 运算规则 & 与 两个位都为1时,结果才为1 | 或 两个位都为0时,结果才为0 ^ 异或 两个位相同为0,相异为1 ~   取反 0变1,1变0 << 左移 各二进位全部左移若干位,高位丢弃,低位补0.1<<n等于2的n次方 >> 右移 各二进位全部右移若干位,对无符号数,高位补0,有符号数,各编译器处理方法不一样,有的补符号位(算术右移),有的补0(…
前言 复习笔记第4篇.CSP RP++. 引用部分为总结性内容. 0--P1433 吃奶酪 题目链接 luogu 题意 房间里放着 \(n\) 块奶酪,要把它们都吃掉,问至少要跑多少距离?一开始在 \((0,0)\) 点处. \(n\leq 15\) ,保留两位小数. 思路 为啥状压第一题是绿题啊.这么水了吗,为啥我还不会( 令 \(f[i][s]\) 表示从点 \(i\) 出发,遍历集合为 \(S\) 的最小值,枚举其他点进行转移.预处理边界 \(f[i][s]=0\) (\(S\) 为除了第…
前言 考试被\(hyj\)吊着打... Solution 考虑一下如果前缀和如果在某一个位置的后面的任意一个前缀和都<=0,肯定这就是最大的. 然后这样子就考虑左右两边的状压dp,然后就好了. 代码实现 #include<stdio.h> #include<stdlib.h> #include<string.h> #include<math.h> #include<algorithm> #include<queue> #incl…
题面 Loj 题解 感觉挺难的啊- 状压\(dp\) 首先,有一个性质 对于一个序列的最大前缀和\(\sum_{i=1}^{p} A[i]\) 显然对于每个\(\sum_{i=p+1}^{x}A[i](p+1 \leq x \leq n)<0\) 我们可以以\(p\)分成两个集合 \(n\leq 20\),所以状压一下 \(sum[i]\)表示当前状态表示的和 \(f[i]\)表示用当前状态的数,组成最大前缀和为\(sum[i]\)的方案数 \(g[i]\)表示当前状态的数,组成的序列,每个前缀…
BZOJ_5369_[Pkusc2018]最大前缀和_状压DP Description 小C是一个算法竞赛爱好者,有一天小C遇到了一个非常难的问题:求一个序列的最大子段和. 但是小C并不会做这个题,于是小C决定把序列随机打乱,然后取序列的最大前缀和作为答案. 小C是一个非常有自知之明的人,他知道自己的算法完全不对,所以并不关心正确率,他只关心求出的解的期望值, 现在请你帮他解决这个问题,由于答案可能非常复杂,所以你只需要输出答案乘上n!后对998244353取模的值,显然这是个整数. 注:最大前…
点此看题面 大致题意: 对于一个序列,求全排列下最大前缀和之和. 状压\(DP\) 考虑如果单纯按照题目中对于最大前缀和的定义,则一个序列它的最大前缀和是不唯一的. 为了方便统计,我们姑且规定,如果一个序列中存在多个最大前缀和,我们取最靠后的一个. 由此我们想到,对于一个序列可以把它分为两部分\([1,k]\)和\([k+1,n]\)满足: \([1,k]\)是\([1,k]\)本身的最大前缀和. \([k+1,n]\)内所有前缀和均小于\(0\). 显然,由于\([1,k]\)是其本身的最大前…
Description     众所周知,fang G 有很多小伙伴,有一天,Fang G 打算带他们去玩有趣的游戏OOXX,这个游戏需要分成两组,有趣的是,每个人互相之间都有一个满意度,大家都想和自己看重的人(excuse me???)一组,却又不希望和另一组拉开差距.     Fang G 发现,每个队伍能发挥出的能力值和这个队伍之间满意值是相等的,而一个队伍之间满意值定义为每一个人对于这个队伍所有人(注意是所有人哦!!!)满意度总和的总和,而一个人对另外一个人的满意度和他们的名字是有关的,…
[BZOJ3195][Jxoi2012]奇怪的道路 Description 小宇从历史书上了解到一个古老的文明.这个文明在各个方面高度发达,交通方面也不例外.考古学家已经知道,这个文明在全盛时期有n座城市,编号为1..n.m条道路连接在这些城市之间,每条道路将两个城市连接起来,使得两地的居民可以方便地来往.一对城市之间可能存在多条道路.据史料记载,这个文明的交通网络满足两个奇怪的特征.首先,这个文明崇拜数字K,所以对于任何一条道路,设它连接的两个城市分别为u和v,则必定满足1 <=|u - v|…