自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(15)
  • 收藏
  • 关注

原创 快速傅里叶变换(FFT)

1.板子2.题目(1)[ZJOI2014]力(2)[AH2017/HNOI2017]礼物

2020-08-24 13:46:10 151

原创 动态凸包

动态凸包题目hdu 6770

2020-08-22 19:31:06 549

原创 状压DP

CF 906 C partyNOIP2017 宝藏

2020-08-20 20:22:54 103

原创 倍增与动态规划

多重背包问题POJ1742 coinsHDU5445 food problem进制拆分POI2007 odw_weight 砝码倍增优化DPCH5702-Count The RepetitionsNOIP2012开车旅行

2020-08-20 20:20:30 251

原创 Lyndon分解

Lyndon分解HDU-6761

2020-08-19 22:11:55 999

原创 CF 1393

CF Round #622A题意:n*n的网格,外框被激活。A/B两人轮流激活格子,激活一个格子的条件:四联通的位置有格子激活,四联通的位置没有同色的格子。思路:输出n/2+1即可#include<iostream>#include<cstdio>#include<cstdlib>#include<cstring>#include<algorithm>#include<cmath>#define LL long lo

2020-08-16 14:46:27 158

原创 CF 1398

Educational Codeforces Round 93A签到题题意:给一个不下降序列,求是否存在三个数,不能组成三角形。思路:考虑a[1],a[2],a[n]即可。#include<iostream>#include<cstdio>#include<cstdlib>#include<cstring>#include<algorithm>#include<cmath>#define LL long long

2020-08-15 17:31:24 150

原创 牛客多校训练营2020第10场

C题意:一棵树,边有边权,边权可修改。每次选一条路径,将该路径所有边边权-1,对当前树求将所有边清空的最小操作次数。思路:对每个点,维护以当前点为lca路径条数。考虑该点向下的边的最大值,如果最大值减去向上的边的差大于其他向下的边的和,那么就可以两两匹配,否则最大边会有剩余。E题意:积木,可以向左推某一行,如果下面空了就会向下掉,求最低高度。思路:二分答案,如果当前列高于答案,看左侧有没有剩余。#include<iostream>#include<cstdio>#in

2020-08-11 17:40:01 145

原创 牛客多校训练营2020第9场

A题意:输出2(2(2)+2+2(0))+2(2+2(0))+2(0)之类的等式的值,其中2(x)表示2x2^{x}2x,等式中只有0,2。思路:栈,或者evalclass Stack(object): def __init__(self): self.__list = [] def is_empty(self): return self.__list == [] def push(self, item): self.__l

2020-08-11 17:31:35 126

原创 牛客多校训练营2020第8场

F题意:一些原料生产一些产品,给出反应方程、初始原料的量,求反应的瓶颈。思路:看出是一个DAG图,对于每个反应,反应物向生成物连边,反应物的系数为边权,生成五系数为点权。f[i]表示从原料到i点的(边权/点权)的乘积。f[i] / i的点权/ i的初始量的最大值即为答案。from fractions import Fraction as Fif __name__ == '__main__': n,m = [int(x.strip()) for x in input().split()]

2020-08-11 17:15:35 131

原创 牛客多校训练营2020第7场

C题意:n*m件物品,分装到一些盒子里,每个盒子可以装任意多的物品。要求,在不拆盒子的前提下,既能将物品均分成m份,又能均分成n份。思路:辗转相除#include<iostream>#include<cstdio>#include<cstdlib>#include<cstring>#include<algorithm>#include<cmath>using namespace std;const int N = 2

2020-08-11 16:43:38 70

原创 牛客多校训练营2020第6场

E签到题题意:给定N, k,输出一个排列,满足:存在一段长度为i的子序列,其和模N余k(1≤i≤N1\leq i\leq N1≤i≤N)。思路:如果存在,n∗(n+1)2=k(modN)\frac{n*(n+1)}{2} = k (mod N)2n∗(n+1)​=k(modN)。如果是奇数,输出N 1 N-1 2 N-2 ……如果是奇数,输出N N2\frac{N}{2}2N​, 1 N-1 2 N-2 ……#include<iostream>#include<cstdio

2020-08-11 15:51:20 93

原创 牛客多校训练营2020第5场

传送门D题意:给一个排列,有两种操作:将整个数列旋转一定次数将数列的前N-1位旋转一定次数注意,进行一轮某种操作可以旋转若干次。求将数列变成升序,最少需要几轮2号操作?(1号操作不限)思路:以每一个位置为起点,求最长上升子序列的大小x,n-x的最小值即是答案。#include<iostream>#include<cstdio>#include<cstdlib>#include<cstring>#include<algorit

2020-08-11 15:14:20 127

原创 牛客暑期多校训练营2020第2场

A题意:n个串(s1,s2,……,sn),求∑i=1n\sum_{i=1}^n∑i=1n​∑j=1n\sum_{j=1}^n∑j=1n​f2(si,sj)。其中f(s,t)为s的前缀和t的后缀的最长匹配长度。思路:  记录所有后缀的hash值,对每一个前缀(长度为i)查询有多少后缀与之匹配。但要除去同一对串(s, t)的多次匹配的情况。假设s[1……i] = t[l-i+1……l] 且s[1……j] = t[l-j+1, l],(i < j),那么nxt[j] = i,因此只需在其kmp中的前驱

2020-08-07 09:37:29 125

原创 牛客暑期多校训练营2020第3场

E Two Matchings题意:  给一个数组a,求排列p、q,满足pi != qi。ppi=i,qqi=i。(n为偶数) 求12\frac{1}{2}21​∑i=1n\sum_{i=1}^{n}∑i=1n​aI-api与12\frac{1}{2}21​∑i=1n\sum_{i=1}^{n}∑i=1n​aI-aqi的和的最小值。思路:  pi != qi即是p中均为二元环。  n=4时,最小值为max-min;  n=6时,最小值为max-min;  n ≥\ge≥ 8时,整块不会比切成4

2020-08-07 09:37:19 167

空空如也

空空如也

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

TA关注的人

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