自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 【Gym - 102219G】Timeout(题目有问题)

这个题是个假题!2019 ICPC Malaysia National题意:给出n个端点,每个端点有ki个任务,任务之间有依赖关系(DAG),且可以并行处理;任务的运行时间可以是定值,也可以是其他端点的运行时间+1。给出m组询问,问某个端点的运行时间,对1e9+7取模。分析:对于每个端点建立DAG,每个端点的运行时间可以拓扑排序或记忆化搜索处理,更新时对所有依赖的时间取max;如果端点里有任务指向其他端点就先处理那个端点,可以用记忆化DFS做。一开始以为任务完成时间不会很大,可以处理完成之后再取模,

2021-04-18 16:36:28 157

原创 【汇总】字符串

字符串部分1. 哈希算法2. 匹配算法2.1. KMP2.2. 拓展 KMP2.3. AC 自动机3. 后缀算法3.1. 后缀自动机4. 回文算法5. 其他算法5.1.

2020-07-21 20:59:56 153

原创 【汇总】计算几何

计算几何部分1 实数与浮点数1.1 精度问题众所周知在c++中double的精度大概是16位(十进制),因此对double类型的数据进行多次操作可能会丢失精度。例如sin(pi/4)*2和sqrt(2)都是2\sqrt{2}2​,但是sin(pi/4)*2 == sqrt(2)却返回false。解决方法:将所有数字扩大n倍,使用整型存储引入eps,设eps为一个很小的正数(如1e-9),若两数差的绝对值小于eps则认为相等。const double eps = 1e-9;inline

2020-07-20 11:05:12 255

原创 【2020牛客多校第二场】Happy Triangle(数据结构)

题意维护一个可重集合 SSS,要求支持一下操作:插入一个数 xxx删除一个数 xxx对于给定的数 xxx,查询是否存在 a,b∈Sa,b∈Sa,b∈S,使得 x,a,bx,a,bx,a,b 作为边长能构成一个非退化三角形。题解查询时,假设得到一组可行解 a,b(a≤b)a,b (a\le b)a,b(a≤b),那么如果将a替换为b的前驱,也一定是一组可行解(可由三角形三边关系得出)。那么判断是否有解可以只查找集合中相邻的边,判断边长和是否大于 xxx 且差小于 xxx 即可。可以记录一个数与

2020-07-13 22:09:19 550 1

原创 【Gym-102483A | NWERC 2018】Access Points(转化/单调栈)

Gym - 102483A题意平面内有n个点 P1,P2...PnP_1,P_2...P_nP1​,P2​...Pn​,找到一个包含n个点的序列 Q1,Q2...QnQ_1,Q_2...Q_nQ1​,Q2​...Qn​,满足 QiQ_iQi​ 的横纵坐标都大于等于 Qi−1Q_{i-1}Qi−1​(即 QiQ_iQi​ 位于 Qi−1Q_{i-1}Qi−1​ 的左上方),并使 ∑i=1n∣∣Qi−Pi∣∣2\sum^{n}_{i=1} ||Q_i-P_i||^2∑i=1n​∣∣Qi​−Pi​∣∣2 最小

2020-07-11 21:50:40 523

原创 【Gym 101142】(NEERC 16)E Easy Reading

文章目录题意题解代码题意给定一个 u,d,l,ru,d,l,ru,d,l,r 组成的字符串和一个01矩阵。玩家按照字符串方向移动,初始为0,经过格子染为1。问是否存在子串能绘制出给定矩阵。题解此题为二位01矩阵的hash方法,也叫做多项式hash。hash=∑i∑jp1i×p2j×[d[i][j]=1]hash = \sum_i \sum_j p_1^i\times p_2^j \times [d[i][j] =1]hash=i∑​j∑​p1i​×p2j​×[d[i][j]=1]这样可以支持

2020-07-11 10:23:28 208

原创 【gym 101991 E】(ACPC 2018) E. Exciting Menus 题解

文章目录题意题解代码题意给 NNN 个字符串,第 iii 个字符串的第 kkk 个位置(从 111 开始)都有权值 AkiA_k^iAki​。定义 Q(i,j,k)=popularity(Sj,ki)×Aki×∣Sj,ki∣Q(i, j, k)=popularity(S_{j,k}^{i}) \times A_k^i \times |S_{j,k}^i|Q(i,j,k)=popularity(Sj,ki​)×Aki​×∣Sj,ki​∣popularity(str)popularity(str)p

2020-07-08 16:29:54 268

原创 【Gym - 101991K】Khoshaf(动态规划)

Gym - 101991K题意给定 N,K,L,RN,K,L,RN,K,L,R,构造一个长度为NNN的数列,每个数在[L,R][L,R][L,R]区间内,且和为3的倍数的区间恰好为KKK个,求方案数。题解首先转换题意,和为3的倍数即和对3取模等于0,可以先考虑每个位置放0/1/2的方案数。然后设计状态,设 dp[n][k][x][y][z][0/1/2]dp[n][k][x][y][z][0/1/2]dp[n][k][x][y][z][0/1/2],其中nnn是构造数列长度、kkk是和为3的倍数的

2020-07-08 15:03:28 178

原创 【Gym - 102428D】Dazzling stars(计算几何)

Gym - 102428D题意平面上有许多点,每个点有权值,问是否存在一条直线,令这条直线按照某个方向移动,使其经过的点权值不下降,且能经过所有点。题解算是个结论题。每个点向权值比它小的所有点连成向量,将所有向量的起点移动到原点,如果所有向量都位于某条过原点的直线的一侧,则所求直线存在。将所有向量根据角度排序,判断是否有相邻向量夹角大于180度即可。(代码写得比较乱,没用计算几何模板)...

2020-01-31 22:30:49 442

原创 【Gym - 102174】旅行的意义 (概率,DP)

Gym - 102174题意:给定一个DAG,起点在1号,经过每个节点会停留一天,之后第二天等概率的选择继续停留一天,或者走向后继节点。但每个节点最多停留两天,经过每条边会花费一天。走到不能走为止,求期望天数。反向逆推答案,定义dp[i]dp[i]dp[i]表示以&i&号点为起点,out[i]out[i]out[i]表示第iii个点的出度出度,走到不能走为止的期望天数。初始...

2019-12-04 13:52:09 255

原创 【Gym - 102428C】 Cut Inequality Down(ST,二分,倍增)

Cut Inequality Down题意:某人在nnn天中第iii天结束时可以获得金币数aia_iai​,但如果某天结束时金币数大于UUU剩余金币数会变成UUU,小于LLL会变成LLL。目前有qqq组询问,每个询问有三个整数B,E,XB,E,XB,E,X。表示在第BBB天开始前有XXX个金币,答案输出在第EEE天结束时金币的个数。n,q<=1e5,ai<=2e6,n,q&lt...

2019-12-01 22:23:08 288

原创 【Gym - 102174J】 金色传说(观察性质+计数dp)

题意求⻓度为 nnn 的所有表达式值的和。表达式由数字和′+′'+'′+′,′−′'-'′−′组成,表达式的第⼀位必须是数字,数字可以有前导 0 。n≤5×105n\le 5\times 10^5n≤5×105题解因为符号加减可以相互抵消,所以,得到一个表达式后,只需要计算第一个符号之前的数值的和。对于长度为nnn的表达式,我们只需要枚举第一个运算符的位置,统计答案即可。设g[i]g[...

2019-12-01 22:18:41 177

原创 【CF 1181D】Irrigation(离线+动态第k大)

CF1181D题意有mmm个城市,已经举办过nnn次比赛,接下来比赛举办地的规则为:选出举办过比赛次数最少且编号最小的城市举办比赛。有qqq次询问,问第kik_iki​届比赛在那个城市举行。1≤n,m,q≤500000,n+1≤ki≤10181≤n,m,q≤500000, n+1\le k_i \le 10^{18}1≤n,m,q≤500000,n+1≤ki​≤1018解法询问离线,并升...

2019-12-01 22:18:31 154

原创 【Gym - 102174G】神圣的 F2 连接着我们(线段树优化建图)

题意两列点均为nnn个,分为AAA列与BBB列,在A,BA,BA,B中分别有p,qp,qp,q个关键点,其中AAA中的qqq个关键点的每一个,都要走到BBB的ppp个关键点的其中任意一个上。在A,BA,BA,B内部的点没有任何连边,A,BA,BA,B之间的边给出的形式如下:a,b,c,d,wa,b,c,d,wa,b,c,d,wAAA列的[a,b][a,b][a,b]区间中的任意一点,有连...

2019-12-01 17:04:23 371

原创 【Gym - 102174D】碟中谍(二分+变换主体+并查集)

Gym - 102174D题意有一条走廊可以视为二维平面上由y=0y=0y=0与y=wy=wy=w两条直线所框定的白色区域,中间有若干的报警传感器位于墙壁上或者走廊中。伊森在模型中可以视为具有一定半径的圆,位于走廊的最左侧x=−∞x=−∞x=−∞,想穿过走廊到达最右侧x=+∞x=+∞x=+∞。求该圆可以具有的最大半径。题解显然可以二分答案,问题在于如何验证答案。假设二分的圆的半径为R,...

2019-12-01 15:06:30 270 1

原创 【Gym - 102174I】 出给 paul-lu 的数数题 (计数)

出给 paul-lu 的数数题题目大意:在一个n×nn\times nn×n的棋盘,每个格子可以填上范围为[1,k][1,k][1,k]的数字。如果一个点为good点,那么该点为其所在的行列中的唯一最大值。求所有情况中good点个数的平方的和,答案取模。考虑两个点在哪些方案中有贡献。之所以可以这样考虑,是因为可以将统计答案的方式拆解然后将循环前提。如果两个点都为good点,那么有以下两种情...

2019-12-01 15:03:43 161

原创 【Gym - 102428J】Jumping Grasshopper(线段树上log求数列定点定向权值next)

题意给一个数列nnn个数字,记为AAA(n≤105n\le 10^5n≤105)。约定跳跃L/R,pL/R,pL/R,p表示从ppp的位置向左或者向右跳到第一个大于当前数的位置,并且在跳跃之后会改变方向继续跳,直到没有合法的点可以继续跳结束跳跃。现给出mmm个操作,分为两种:U,p,vU,p,vU,p,v表示把ppp的值修改为vvv。L/R,pL/R,pL/R,p表示求从ppp点开始向...

2019-11-26 20:07:29 331

原创 【Gym - 102428L】 Leverage MDT(单调栈)

题意:一个由G或B组成的n*m的矩阵,现在可以任选任意行,将该行的G与B反转。求一个最大的全是G或B的正方形。预处理出len[i][j]len[i][j]len[i][j],表示以第iii行第jjj列开始向后有len[i][j]len[i][j]len[i][j]个位置字母相同。对于每一列可以自上而下处理出最上面的大于等于len[i][j]len[i][j]len[i][j]的len[i][...

2019-11-26 18:44:08 319

原创 【CF 1011E】Border(同余)

题目连接题意:给定nnn个十进制数{ai}\{a_i\}{ai​},可以任意数量组合相加。求最后结果在kkk的剩余系下有多少个数可以被组合出,并输出可以背组合出的数的值。即求出所有(∑i=1nbiai)mod  k,bi∈N+\left(\sum_{i=1}^{n}b_{i}a_{i}\right)\mod k, b_i\in N^+(∑i=1n​bi​ai​)modk,bi​∈N+的值。...

2019-11-26 17:23:40 99

原创 【CF 1011F】Mars rover(树上dfs++)

Codeforces Round #499 (Div. 2)A签到B签到C二分可做,也有O(n)O(n)O(n)做法。……D先输出n个1,根据输入可以得出01序列,然后二分即可。#include<bits/stdc++.h>using namespace std;typedef long long ll;const int N=32e4;int a[N];...

2019-11-26 15:19:57 144

原创 【Gym - 102428F】Fabricating Sculptures (单峰计数dp)

题意输入n,mn,mn,m,求底座长度为nnn,方块个数为mmm的不会发生积水的雕像的个数。n=3,m=6n=3,m=6n=3,m=6,左边为合法的方案,右边不合法。题解可以转化为要求方块要单峰。通过这一题发现,单峰的计数问题可以从高度的层面入手考虑。因为每一层的方块个数是单调的,而且一定在上一层放置的方块上面。设dp[i][j]dp[i][j]dp[i][j]表示已经放了iii个方...

2019-11-25 16:34:42 561

原创 【比赛】2019暑假排位(7)

比赛The 2015 ACM-ICPC Asia Dhaka Regional ContestABCDEFGHIJKLZ**Z题解A签到题,扫一遍统计一下#include <cstdio>#include <iostream>#include <cstring>#include ...

2019-08-19 15:22:00 90

原创 【比赛】2019暑假排位(6)

比赛Problems from The 2016 ACM - ICPC Asia Nha Trang Regional ContestABCDEFGHIJKLLZY**Y**Y-Z**Z**YLZ-题解ABC1D1E1GHI1JK

2019-08-17 21:04:40 159

原创 【比赛】gym-100753

比赛2015 German Collegiate Programming Contest (GCPC 15) + POI 10-T3ABCDEFGHIJKLM--Y**YYLLLL-L--题解C二分答案,每次使用三角形相似计算每个三角形的面积。#include <bits/stdc++.h>using...

2019-08-13 18:52:45 308

原创 【比赛】gym-101889

比赛2017-2018 ACM-ICPC Latin American Regional Programming ContestABCDEFGHIJKLM-YY-YLLYZL--**Z题解B规律题。如果含有元音字母,最终串中第一个字母必为元音。演绎翻转操作,维护一个双端队列,若开始向左选择数字,从头部加入,反之从...

2019-08-12 21:00:11 253

空空如也

空空如也

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

TA关注的人

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