自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

ZSQ

新的一天,新的不会

  • 博客(68)
  • 收藏
  • 关注

原创 CodeForces 457 B.Distributed Join(贪心)

Description有两个表,AA表有mm个分区,第ii个分区有aia_i行,BB表有nn个分区,第ii个分区有bib_i行,每次操作可以任一个表的任一分区的一行复制到任意另一个分区里,最后需要满足,对于任意AA表的一行和任意BB表的一行,都存在一个分区包含这两行,问最少进行多少次操作Input第一行两个整数nn和mm分别表示两个表的分区数,之后输入nn个整数aia_i表示AA表第ii个分区的行数

2017-08-31 23:37:46 540

原创 CodeForces 55 C.Pie or die(博弈论)

Description一个n∗mn*m的棋盘,上面有kk个棋子,VolodyaVolodya和VladVlad开始玩游戏,VolodyaVolodya先手,他每次可以选择一个棋子往上下左右走一步,如果某个棋子出了棋盘就算VolodyaVolodya赢,VladVlad每次可以选择一个边界的格子把这个格子的属于边界的边堵住这样VolodyaVolodya就不能把某个棋子从这个边移动出去,问Volody

2017-08-31 20:40:31 516 1

原创 HDU 3970 Harmonious Set(数论)

Description定义Sn=1,2,...,nS_n={1,2,...,n},问SnS_n的子集中有多少满足和模nn为00的Input第一行一整数TT表示用例组数,每组用例输入一整数nn(T≤300,1≤n≤109)(T\le 300,1\le n\le 10^9)Output对于每组用例,输出SnS_n的子集中有多少满足和模nn为00的,结果模109+710^9+7Sample Input5

2017-08-31 20:07:19 344

原创 关于{1,2,...,n}的子集和的一个有趣结论

令Sn=1,2,...,nS_{n}={1,2,...,n},求SnS_{n}的子集中满足和模nn同余kk的个数Nkn(0≤k<n)N_{n}^{k}(0\le k<n) \\\\引理1. 令Pn(x)=∏i=1n(1+xi)=∑i=0n(n+1)2an,ixiP_{n}(x)=\prod\limits_{i=1}^{n}(1+x^i)=\sum\limits_{i=0}^{\frac{n(n+1

2017-08-31 19:55:31 794

原创 CodeForces 487 B.Strip(dp+尺取+set)

Description给出一个长度为nn的序列,要求将其分成尽可能少的段,使得每段长度不小于ll,且每段极差至多为ssInput第一行三个整数n,s,ln,s,l,第二行nn个整数a1,...,na_{1,...,n}表示该序列(1≤n≤105,0≤s≤109,1≤l≤105,−109≤ai≤109)(1\le n\le 10^5,0\le s\le 10^9,1\le l\le 10^5,-10^

2017-08-29 22:28:17 502

原创 CodeForces 703 C.Chris and Road(贪心)

Description一个凸多边形的公共汽车,速度为vv沿着xx轴负方向行驶,一个行人要从(0,0)(0,0)到达(0,w)(0,w),速度不超过uu,问在不出车祸的情况下人从(0,0)(0,0)到达(0,w)(0,w)点最短用时Input第一行四个整数n,w,v,un,w,v,u,之后nn行每行两个整数xi,yix_{i},y_{i}表示凸多边形上的一个点(3≤n≤10000,1≤w≤109,1≤

2017-08-29 16:20:40 436

原创 CodeForces 392 C.Yet Another Number Sequence(矩阵快速幂)

Description定义F1=1,F2=2,Fi=Fi−1+Fi−2(i≥3)F_{1}=1,F_{2}=2,F_{i}=F_{i-1}+F_{i-2}(i\ge 3)定义Ai(k)=Fi⋅ik(i≥1)A_{i}(k)=F_{i}\cdot i^k(i\ge 1)求A1(k)+A2(k)+...+An(k)A_{1}(k)+A_{2}(k)+...+A_{n}(k),结果模109+710^9+7

2017-08-29 15:40:30 605

原创 CodeForces 14 E.Camels(dp)

Description构造序列y1,...,ny_{1,...,n}满足:1.有tt个j(2≤j≤n−1)j(2\leq j\leq n-1)满足yj−1<yj>yj+1y_{j-1}<y_{j}>y_{j+1}2.有t−1t-1个j(2≤j≤n−1)j(2\leq j\leq n-1)满足yj−1>yj<yj+1y_{j-1}>y_{j}<y_{j+1}3.yjy_{j}是介于1~4之间的整数4.

2017-08-29 10:59:51 377

原创 CodeForces 232 B.Table(dp+组合数学)

Description给出一个n∗mn*m的棋盘,在上面放一些棋子使得任意一个n∗nn*n的区域里都有kk个棋子,问方案数Input三个整数n,m,k(1≤n≤100,n≤m≤1018,0≤k≤n2)n,m,k(1\leq n\leq100,n\leq m\leq 10^{18},0\leq k\leq n^2)Output输出方案数,结果模109+710^9+7Sample Input5 6 1S

2017-08-29 10:38:59 429

原创 HDU 5713 K个联通块(状压DP)

Description众所周知,度度熊喜欢图,尤其是联通的图。今天,它在图上又玩出了新花样,新高度。有一张无重边的无向图, 求有多少个边集,使得删掉边集里的边后,图里恰好有K个连通块。 Input第一行为T,表示输入数据组数。对于每组数据,第一行三个整数N,M,K,表示N个点M条边的图。 接下来M行每行两个整数a,b,表示点a和点b之间有一条边。1≤T≤201≤K≤N≤140≤M≤N∗(N+1)/

2017-08-29 09:28:19 678

原创 CodeForces 662 D.International Olympiad(构造)

Description给出一个数字的后缀,要求添加一些前缀使得该数字不小于1989且使得这个数字在之前没有被用过的情况下尽可能小Input第一行一个整数TTT表示用例组数,每组用例输入一个′′&nbsp;IAO′&nbsp;′′″&nbsp;IAO′&nbsp;″''\ IAO'\ ''+一个数字后缀,保证数字后缀长度不超过9位(1≤T≤1000)(1≤T≤1000)(1\leq T\...

2017-08-28 23:28:12 499

原创 CodeForces 232 A.Cycles(构造)

Description要求构造一个不超过100个点的无向图使得该图有kk个三元环Input一个正整数k(1≤k≤105)k(1\leq k\leq 10^5)Output首先输出一整数nn表示要构造的图的点数,之后输入一个n∗nn*n的01矩阵表示该图的邻接矩阵(2≤n≤100)(2\leq n\leq 100)Sample Input1Sample Output3 011 101 110So

2017-08-28 23:09:24 479

原创 CodeForces 453 A.Little Pony and Expected Maximum(快速幂)

Description掷一个mm面的骰子(设mm个面上的点数分别是1,2,...,m1,2,...,m,且掷到每一个面的概率相同均为1m\frac{1}{m})nn次,问nn次中最大点数的期望值Input两个整数mm和nn (1≤m,n≤105)(1\leq m,n\leq 10^5)Output输出问nn次中最大点数的期望值,结果与精确值的绝对误差和相对误差均需小于10−410^{-4}Sampl

2017-08-28 22:57:00 499

原创 LightOJ 1288 Subsets Forming Perfect Squares(高斯消元法)

Description给出一个nn个元素的集合SS,问SS有多少子集的乘积是一个完全平方数Input第一行一整数TT表示用例组数,每组用例首先输入一整数nn表示SS中元素个数,之后输入nn个正整数a1,...,ana_{1},...,a_{n}表示这nn个元素,保证aia_{i}的最大素因子不超过300 (T≤100,1≤n≤1000,2≤ai≤215)(T\leq100,1\leq n\leq 1

2017-08-28 22:33:51 599

原创 HDU 5306 Gorgeous Sequence(线段树)

Description一个长度为nn的序列a1,...,ana_{1},...,a_{n},有三种操作:0 x y t0\ x\ y\ t:对∀x≤i≤y\forall x\leq i\leq y,令ai=min(ai,t)a_{i}=min(a_{i},t)1 x y1\ x\ y:输出aia_{i}的最大值(x≤i≤y)(x\leq i\leq y)2 x y2\ x\ y:输出aia_{i}的

2017-08-27 16:14:29 666

原创 CodeForces 643 D.Bearish Fanpages(set+multiset)

Description一个社交网站有nnn个网页,第iii个公司拥有第iii个网页,每一个网页有一个父网页,不允许iii网页是jjj网页的父网页且jjj网页是iii网页的父网页,也不允许iii网页是自己的父网页,对于iii网页,设其父网页是j0j0j_{0}网页,其子网页为j1,j2,...,jkj1,j2,...,jkj_{1},j_{2},...,j_{k},当用户浏览iii网页时,他们会...

2017-08-27 15:42:51 503

原创 CodeForces 303 A.Lucky Permutation Triple(构造)

Description给出一正整数nn,构造三个00~n−1n-1的排列a,b,ca,b,c,使得∀1≤i≤n,ai+bi≡ci mod n\forall 1\leq i\leq n,a_{i}+b_{i}\equiv c_{i}\ mod\ nInput一个正整数nn(1≤n≤105)(1\leq n\leq 10^5)Output如果存在合法的三个排列a,b,ca,b,c则输出任意一组解,否则输

2017-08-27 14:27:45 362

原创 CodeForces 313 C.Ilya and Matrix(构造)

Description给出4n4^n个数,要求构造一个2n×2n2^n\times 2^n的矩阵,使得该矩阵的权值最大,定义一个2n×2n2^n\times 2^n矩阵的权值:令mm为该矩阵中元素的最大值,如果n=0n=0,则该矩阵的权值为mm;否则把该矩阵分成四个2n−1×2n−12^{n-1}\times 2^{n-1}的子矩阵,该矩阵的权值为这四个四矩阵的权值和加上mmInput第一行输入一个

2017-08-27 13:49:17 332

原创 CodeForces 314 B.Sereja and Periods(dp)

Description定义记号[x,n]=x+x+...+x=∑i=1nx[x,n]=x+x+...+x=\sum\limits_{i=1}^nx,其中xx是一个字符串,nn是一个正整数,++表示字符串连接,例如[abc,2]=abcabc[abc,2]=abcabc,如果从字符串tt中删除若干字符后变成字符串ss,则称字符串ss可以从字符串tt中得到,给出两个字符串w=[a,b],q=[c,d]w

2017-08-27 13:35:16 515

原创 HDU 4283 You Are the One(区间DP)

Descriptionnn个人轮流上台表演,每个人有一个屌丝值DiD_{i},如果第ii个人第kk个上台,他的不高兴值为(k−1)∗Di(k-1)*D_{i},初始时这nn个人按顺序站好,为了降低不高兴值,可以通过一个小黑屋(后进先出)调整这nn个人上台的先后顺序,问这nn的人的总不高兴值的最小值Input第一行一整数TT表示用例组数,每组用例首先输入一整数nn表示人数,之后nn个整数DiD_{i}

2017-08-27 13:18:57 451

原创 CodeForces 317 D.Game with Powers(博弈论)

Description两个人VasyaVasya和PetyaPetya玩游戏,从11 ~ nn中取数,VasyaVasya先取,如果xx之前已经被取过则所有xx的正整数次幂都不能被取,谁先没有数字可以取谁输,问谁赢Input一个正整数nn(1≤n≤1091\leq n\leq 10^{9})Output输出胜者Sample Input1Sample OutputVasyaVasyaSolution如

2017-08-27 12:57:20 630

原创 BZOJ 2179 FFT快速傅立叶(FFT)

Description给出两个nn位1010进制整数xx和yy,你需要计算x∗yx*yInput第一行一个正整数nn。 第二行描述一个位数为nn的正整数xx。 第三行描述一个位数为nn的正整数yy。n≤60000n\leq 60000Output输出一行,即x∗yx*y的结果。Sample Input1 3 4Sample Output12SolutionFFT模版题Code#include<c

2017-08-27 11:04:22 406

原创 HDU 6084 寻找母串(卡特兰数)

Description 对于一个串S,当它同时满足如下条件时,它就是一个01偏串: 1、只由0和1两种符组成; 2、在S的每一个前缀中,0的个数不超过1的个数; 3、S中0的个数和1的个数相等。现在给定01偏串S,请计算一下S在所有长度为n的01偏串中作为子串出现的次数的总和。 由于结果比较大,结果对1e9+7取余后输出。样例解释: 在第二个样例中,长度为4的偏串共两个1010,1100

2017-08-17 20:55:38 782

原创 BZOJ 4031 小Z的房间(生成树计数+行列式)

Description 你突然有了一个大房子,房子里面有一些房间。事实上,你的房子可以看做是一个包含n∗mn*m个格子的格状矩形,每个格子是一个房间或者是一个柱子。在一开始的时候,相邻的格子之间都有墙隔着。你想要打通一些相邻房间的墙,使得所有房间能够互相到达。在此过程中,你不能把房子给打穿,或者打通柱子(以及柱子旁边的墙)。同时,你不希望在房子中有小偷的时候会很难抓,所以你希望任意两个房间之间都只

2017-08-17 20:37:13 469

原创 BZOJ 3527 力(FFT)

Description给出一个长度为nn的序列q0,...,n−1q_{0,...,n-1},定义Fj=∑i<jqiqj(i−j)2−∑i>jqiqj(i−j)2F_{j}=\sum\limits_{i<j}\frac{q_{i}q_{j}}{(i-j)^{2}}-\sum\limits_{i>j}\frac{q_{i}q_{j}}{(i-j)^{2}},求Ei=FiqiE_{i}=\frac{F_

2017-08-17 19:53:39 388

原创 HDU 6134 Battlestation Operational(积性函数+莫比乌斯反演)

Description求f(n)=∑i=1n∑j=1i⌈ij⌉[(i,j)=1]f(n)=\sum\limits_{i=1}^{n}\sum\limits_{j=1}^{i}\lceil \frac{i}{j}\rceil [(i,j)=1]Input多组用例,每组用例输入一整数nn,以文件尾结束(1≤n≤106)(1\leq n\leq10^{6})Output对于每组用例,输出f(n)f(n),

2017-08-17 18:41:38 1884 3

原创 HDU 6083 度度熊的午饭时光(01背包)

Description度度熊最期待每天的午饭时光,因为早饭菜品清淡,晚饭减肥不敢吃太多(胖纸的忧伤T.T)。百度食堂的午餐超级丰富,祖国各大菜系应有尽有,度度熊在每个窗口都有爱吃的菜品,而且他还为喜爱的菜品打了分,吃货的情怀呀(>.<)。但是,好吃的饭菜总是很贵,每天的午饭预算有限,请帮度度熊算一算,怎样打饭才能买到的最好吃的饭菜?(不超过预算、不重样、午餐等分最高的情况下,选择菜品序号加和最小,加

2017-08-17 10:49:45 513

原创 HDU 6082 度度熊与邪恶大魔王(01背包)

Description度度熊为了拯救可爱的公主,于是与邪恶大魔王战斗起来。邪恶大魔王的麾下有n个怪兽,每个怪兽有a[i]的生命值,以及b[i]的防御力。度度熊一共拥有m种攻击方式,第i种攻击方式,需要消耗k[i]的晶石,造成p[i]点伤害。当然,如果度度熊使用第i个技能打在第j个怪兽上面的话,会使得第j个怪兽的生命值减少p[i]-b[j],当然如果伤害小于防御,那么攻击就不会奏效。如果怪兽的生命值降

2017-08-17 10:02:06 370

原创 HDU 6080 度度熊保护村庄(计算几何+最小环-Floyd)

Description哗啦啦村袭击了喵哈哈村!度度熊为了拯救喵哈哈村,带着自己的伙伴去救援喵哈哈村去了!度度熊与伙伴们很快的就过来占据了喵哈哈村的各个军事要地,牢牢的守住了喵哈哈村。但是度度熊发现,这是一场旷日持久的战斗,所以度度熊决定要以逸待劳,保存尽量多的体力,去迎战哗啦啦村的战士。于是度度熊决定派尽量多的人去休息,但是同时也不能松懈对喵哈哈村的保护。换句话而言,度度熊希望尽量多的人休息,而且存

2017-08-17 09:54:35 1351

原创 UOJ 34 多项式乘法(FFT)

Description 给你两个多项式,请输出乘起来后的多项式 Input 第一行两个整数nn和mm,分别表示两个多项式的次数 第二行n+1n+1个整数,分别表示第一个多项式的00到nn次项前的系数 第三行m+1m+1个整数,分别表示第一个多项式的00到mm次项前的系数 Output 一行n+m+1n+m+1个整数,分别表示乘起来后的多项式的00到n+mn+m次项前的系数 Sampl

2017-08-16 18:41:54 461

原创 CodeForces 35 D.Animals(贪心)

Descriptionnn天,每天会来一种动物,第ii天来的动物一天要吃cic_{i}吨食物,一个动物来了之后就一直吃到第nn天,总共只有xx吨食物,问食物最多可以供多少只动物吃Input第一行两个整数nn和xx分别表示天数和食物总数,之后n个整数cic_{i}表示第ii天来的动物的食量(1≤n≤100,1≤x≤104,1≤ci≤300)(1\leq n\leq 100,1\leq x\leq 10

2017-08-16 18:33:06 365

原创 CodeForces 498 D.Traffic Jams in the Land(线段树)

Descriptionn+1n+1座城市,ii城市和i+1i+1城市之间有一条权值为aia_{i}的道路,设到达ii城市的时间是tt,如果ai|ta_{i}|t则通过该道路到i+1i+1城市用时为2,否则用时为1,有两种操作A x y:A\ x\ y:查询00时刻从xx城市出发到yy城市的用时C x y:C\ x\ y:将xx城市到x+1x+1城市道路的权值变为yyInput第一行一个整数nn表示道

2017-08-16 18:22:50 360

原创 CodeForces 528 D.Fuzzy Search(FFT)

Description 给出一个长度为nn的串SS和一个长度为mm的串TT,两个串均只由′A′,′G′,′C′,′T′'A','G','C','T'组成,定义TT和SS在ii位置匹配为对于任意1≤j≤m1\leq j\leq m,存在p(1≤p≤n)p(1\leq p\leq n)使得|(i+j−1)−p|≤k|(i+j-1)-p|\leq k且S[p]=T[j]S[p]=T[j],问TT可以在多

2017-08-16 18:02:02 551

原创 HDU 6128 Inverse of sum(二次剩余)

Description给nn个小于pp的非负整数a1,...,na_{1,...,n},问有多少对(i,j)(1≤i<j≤n)(i,j)(1\leq i<j\leq n)模pp在意义下满足1ai+aj≡1ai+1aj\frac{1}{a_{i}+a_{j}}\equiv \frac{1}{a_{i}}+\frac{1}{a_{j}},即这两个数的和的逆元等于这两个数的逆元的和,注意0没有逆元Inpu

2017-08-16 17:02:14 953

原创 HDU 6120 All Kill(数论+FFT+莫比乌斯反演)

Description 给一个非负序列x1,2,...,nx_{1,2,...,n},值小于32677,令yi,j=xi∗xj mod 32677y_{i,j}=x_{i}*x_{j} \ mod\ 32677,问有多少六元组(a,b,c,d,e,f)(a,b,c,d,e,f)满足gcd(ya,b,yc,d)=gcd(yc,d,ye,f)=gcd(ye,f,ya,b)=1gcd(y_{a,b},y

2017-08-16 16:06:35 596

原创 CodeForces 52 B.Right Triangles(水~)

Description 给出一个n*m的矩阵,问其中以三个*为顶点且直角边水平竖直的直角三角形个数 Input 第一行两个整数n和m表示矩阵行列数,之后输入一个n*m字符矩阵(1<=n,m<=1000) Output 输出满足条件的直角三角形个数 Sample Input Sample Output 9 Solution 每一个星作为直角顶点对答案的贡献即其所处行的星的个数乘

2017-08-09 19:37:05 602

原创 CodeForces 551 D.GukiZ and Binary Operations(dp+矩阵快速幂)

Description Input 四个整数n,k,l,m (2<=n<=1e18,0<=k<=1e18,0<=l<=64,1<=m<=1e9+7) Output 输出满足条件的序列a个数,结果模m Sample Input 2 1 2 10 Sample Output 3 Solution Code#include<cstdio>#include<cstring>u

2017-08-08 10:36:53 391

原创 CodeForces 327 C.Magic Five(快速幂)

Description 给一个字符串s,重复k次,要求去掉其中若干数时候使得该数可以被5整除,允许删除后有前置0存在,求方案数 Input 第一行一个数字串s,第二行一整数k表示重复次数(1<=|s|<=1e5,1<=k<=1e9) Output 输出方案数,结果模1e9+7 Sample Input 1256 1 Sample Output 4 Solution Cod

2017-08-08 10:18:21 434

原创 HDU 6067 Big Integer(生成函数+NTT)

Description 有1~k-1这k-1个数,要求构造一个k进制数,其中第i个数是否可以出现j次取决于g(i,j)的取值,m次操作,每次操作把g(x,y)由0变1或由1变0,问操作前的答案和每次操作后的答案之和 Input 第一行一整数T表示用例组数,每组用例首先输入三个整数k,n,m分别表示进制,一种数出现的最大次数以及操作数,之后输入一个(k-1)*(n+1)的矩阵g,g(i,j)=1

2017-08-08 09:54:26 952

原创 CodeForces 172 D.Calendar Reform(数论)

Description 第一年a天,第二年a+1天,以此类推,第n年a+n-1天,一年可以被分成几个月,一个月的天数必须是完全平方数,一年中每个月的天数相同,问这n天最多有几个月 Input 两个整数a和n(1<=a,n<=1e7,a+n-1<=1e7) Output 输出最少月数 Sample Input 25 3 Sample Output 30 Solution 问题转化

2017-08-08 09:54:17 381

空空如也

空空如也

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

TA关注的人

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