【题目描述】 现给定一组单词,如果存在某两个单词,一个单词的前缀和另一个单词的后缀相同,则认为这两个单词可以相连,例如“abce”与“efdg”可以相连,询问这组单词能否排成一排,如果可以,则输出字典序最小的排列方式。 【输入描述】 输入多组数据,对于每组数据: 第一行输入一个正整数N(3 <= N ...
分类:
其他好文 时间:
2016-10-01 10:26:24
阅读次数:
133
传送门 不是那么裸的点分治。 $f[i][0/1]$表示当前节点的一个子树中总权值和为$i$,且是否存在一个前缀使得其前缀和为$i$ $g[i][0/1]$表示当前节点的已遍历过的子树,其余一样。 对于每个节点 $ans_{node}=g[0][0]?f[0][0]+ \sum (g[?i][0]? ...
分类:
其他好文 时间:
2016-09-26 14:21:31
阅读次数:
142
我说之前出的模拟题太水了,老师就直接把jcvb出的模拟赛甩上来了 然后爆的不要不要的QAQ 100+5+40=145 T2有20分的特殊数据,但是没拿好,没有想到判断否有奇数圈+染色的办法 T3可以在加一两个前缀和优化的,然而没有加,少了大概20分 而且这题用莫队可以得70-100,但是我不会莫队, ...
分类:
其他好文 时间:
2016-09-24 17:27:58
阅读次数:
142
bzoj1637[Usaco2007 Mar]Balanced Lineup 题意: n头牛,第i头牛位置为ai,种族为bi(只能为0,1),求一个区间(按数轴位置),使得区间两端牛距离差最大且两种种族牛数相等。n≤50000。 题解: 按位置排序。然后利用前缀和sum[i][0]-sum[j-1] ...
分类:
其他好文 时间:
2016-09-23 23:03:32
阅读次数:
124
题目链接:http://acm.uestc.edu.cn/#/problem/show/1217 给你一个长为n的数组,问你有多少个长度严格为m的上升子序列。 dp[i][j]表示以a[i]结尾长为j的上升子序列个数。常规是三个for。 这里用树状数组优化一下,类似前缀和的处理,两个for就好了。 ...
分类:
编程语言 时间:
2016-09-23 19:49:24
阅读次数:
205
Python 用下划线作为变量前缀和后缀指定特殊变量。_xxx 不能用'from moduleimport *'导入 __xxx__ 系统定义名字 __xxx 类中的私有变量名 核心风格:避免用下划线作为变量名的开始。因为下划线对解释器有特殊的意义,而且是内建标识符所使用的符号,我们建议程序员避免用 ...
分类:
编程语言 时间:
2016-09-23 18:20:06
阅读次数:
208
链接:http://vjudge.net/problem/UVA-1619 分析:首先计算前缀和,后面会用到。设每个i都属于一个满足下述条件的最大区间(因为题意说是正整数序列,区间当然越大越好),a[i]为区间中的最小值,然后预处理出以i为轴向左和向右延伸的最远位置L[i]和R[i]来标记这个区间, ...
分类:
其他好文 时间:
2016-09-23 14:56:47
阅读次数:
128
题目链接:http://codeforces.com/contest/712/problem/D A初始有一个分数a,B初始有一个分数b,有t轮比赛,每次比赛都可以取[-k, k]之间的数,问你最后A比B大的情况有多少种。 dpA[i][j]表示第i轮获得j分的情况数。因为第i轮只和第i-1轮有关, ...
分类:
编程语言 时间:
2016-09-22 21:24:11
阅读次数:
269
只有互质的数对才对答案有贡献。 假设有一个数x,和它互质的数的个数就是它的欧拉函数。 1<=x<=n,所以要求欧拉函数前缀和。 把数对前后两个数颠倒,总答案数为前缀和乘2 (1,1)不能颠倒 所以:求出欧拉函数前缀和,乘2,减1,就是答案。 ...
分类:
其他好文 时间:
2016-09-22 01:08:33
阅读次数:
158