Processing math: 100%

NanoApe's Blog

既是咸鱼又是辣鸡

【Plan B】#16

NanoApe posted @ 2016年6月02日 21:11 in 蒟蒻不做题提前退役 , 1587 阅读

水题大集锦(整理远古时期A过的题)

49/50

1214: [HNOI2004]FTP服务器

大模拟(无SPJ)

1216: [HNOI2003]操作系统

用堆模拟即可

3212: Pku3468 A Simple Problem with Integers

线段树

2819: Nim

链剖

3083: 遥远的国度

链剖*2

3155: Preprefix sum

用线段树维护第一重前缀和

2045: 双亲数

nm[gcd(i,j)=d]=ndmd[gcd(i,j)=1]=ndmda|gcd(i,j)μ(a)=aμ(a)ndamda

1819: [JSOI]Word Query电子字典

字符串+Hash

2038: [2009国家集训队]小Z的袜子(hose)

莫队

1259: [CQOI2007]矩形rect

状压连通性DP?打表!

3437: 小P的牧场

斜率优化

3439: Kpm的MC密码

反向加入AC自动机然后每个点维护主席树

3209: 花神的数论题

依次枚举哪一位上的1的段数和个数

3207: 花神的嘲讽计划Ⅰ

Hash一发数列然后询问就可以主席树了

1430: 小猴打架

生成树有 nn2 种,然后选边的顺序为 (n1)!,相乘即可

1874: [BeiJing2009 WinterCamp]取石子游戏

SG函数求出来就好了,至于方案嘛,看减完SG函数异或和满足要求不

1201: [HNOI2005]数三角形

统计,需要用到树状数组

3040: 最短路(road)

配对堆维护最短路(你可以将随机生成的边全部去掉,答案也是对的)

2829: 信用卡凸包

求出所有点然后凸包,然后加上一个圆的周长即可

3781: 小B的询问

莫队

2732: [HNOI2012]射箭

每个约数条件可以转成半平面,然后就变成半平面交了

1038: [ZJOI2008]瞭望塔

也是半平面交

3097: Hash Killer I

卡模2^64的构造方法:

对于偶数进制就直接abbbbbbbbb...和bbbbbbbbbbb...

对于奇数进制就直接建个原串然后将其复制反转后连接在后面

3098: Hash Killer II

输出一个随机字符串

4352: Tower

从大到小放,每次能放的位置是有限个的 [AD,A],然后累乘

2441: [中山市选2011]小W的问题

建两棵线段树,一棵储存 y1 有关的信息(A),一棵储存 y2 有关的信息(B)

按 x 从小到大遍历,其作为 y3 的方案数为 A[1,y-1] 减去 B[1,y],查询完修改则将 A[1,y-1] 中包含的点全部+1,将查询到的总点数修改进 B[y,y],当然也别忘了将点加进 A[y,y]

然后右边的部分就同样的处理

2154: Crash的数字表格

啊变形后成这样

Ans=a|nab|nb2μ(b)nabmabij

这样其实就能双参数 O(n) 完成

然后其实可以变成

Ans=a|nab|abμ(b)nabmabij

我们把前面那部分提出来,会发现

g(n)=a|nab|abμ(b)

这是积性函数,所以可以线性筛然后 O(n0.5) 出解

1455: 罗马游戏

斜堆

3262: 陌上花开

CDQ,先按第一维排序,然后分治,分治回来每块都已经按照第二维排序,接着用树状数组来维护左边对右边的贡献,复杂度 O(nlog2n)

2150: 部落战争

从上往下连边,然后最小路径覆盖

3065: 带插入区间K小值

数据结构模版题(详细题解看跳蚤国王Blog

2555: SubString

后缀平衡树模版题

4146: [AMPPZ2014]Divisors

每一维排序后相邻点连边,然后最短路

4143: [AMPPZ2014]The Lawyer

每一天分别考虑,然后就随便 dp

4145: [AMPPZ2014]The Prices

状压

4423: [AMPPZ2013]Bytehattan

对偶图,假如边两边是同个联通块那么边两端就断开

4276: [ONTAK2015]Bajtman i Okrągły Robin

按 v 从大到小然后匈牙利

3550: [ONTAK2010]Vacation

单纯形

4245: [ONTAK2015]OR-XOR

按位贪心考虑

3544: [ONTAK2010]Creative Accounting

前缀和然后对于每一位 O(nlogn) 二分查找

2013: [Ceoi2010]A huge tower

从小到大插入,看有多少合法的位置能够插入

2386: [Ceoi2011]Team

基数排序完贪心考虑,设 f(x) 表示前 x 个人的最多组数

1768: [Ceoi2009]logs

一行行扫下来,一行扫过后维护每一列往上连续多少个 1 并让其升序

2275: [Coci2010]HRPA

答案是那个数的 Fib 构成的最小的数(并不会证明)

3810: [Coci2015]Stanovi

记忆化搜索

2223: [Coci 2009]PATULJCI

主席树

4291: [PA2015]Kieszonkowe

删掉最小的奇数即可

3714: [PA2014]Kuglarz

转成 MST

3709: [PA2014]Bohater

对于回血大于扣血的怪物,当前能打的就找回血最多的(相对扣血前),然后对于其他的就找回血最多的(相对扣血后)


登录 *


loading captcha image...
(输入验证码)
or Ctrl+Enter