上一页 1 2 3 4 5 6 ··· 22 下一页
摘要: 题意: 给你一棵树(n<=1e5),每个节点有颜色col[i]<=n,和权值val[i]<2^20, 每次修改一个节点的权值或颜色,求每次修改之后每个节点与不是他的祖先或在他子树内的且颜色相同的点的权值异或之和。 首先,我们考虑简化问题,如果没有颜色、祖先和子树限制,单纯求各个点对的异或值之和应该怎 阅读全文
posted @ 2020-07-31 09:29 Hzoi_joker 阅读(223) 评论(0) 推荐(0) 编辑
摘要: 题意: 每次给你 L R d,问L~R中有多少个数 x 满足 x 各个位上的数 d 为唯一众数 ,如23323 中的 3,10000中的0,但是2233对于2和3都不算。(L<=1e18,R<=1e18,0<=d<=9) 很显然,这是一个数位DP,按照数位DP的套路,我们需要计算从高到低前x-1位已 阅读全文
posted @ 2020-07-29 11:08 Hzoi_joker 阅读(438) 评论(0) 推荐(0) 编辑
摘要: 题意 设 S ( x ) 为x各数位之和,如 S (123) =1+2+3=6,求有多少数对(A,B)满足S(A)>S(B) 0<=A<B<=N N<=10^100。 看数据范围,肯定是数位DP。 首先,我们考虑简化问题: 当N=9999999……999999时答案时什么样的。 我们考虑分类讨论: 阅读全文
posted @ 2020-07-27 20:05 Hzoi_joker 阅读(281) 评论(0) 推荐(0) 编辑
摘要: 题意: n( n<=300 )个点m条边( m<=40000 )的带边权无向连通图,要求按顺序经过a1 b1 a2 b2 ……ak bk,( k<=300 )你有一个传送门,可以随时在脚下放置一个传送门,两个传送门之间可以相互传送,但场上最多同时存在两个传送门,你可以在任意时候关掉任意一个传送门。问 阅读全文
posted @ 2020-07-26 09:55 Hzoi_joker 阅读(334) 评论(0) 推荐(0) 编辑
摘要: 题意,给你一棵n个点的树,n<=20000。每个边上有两种权值,要求有K条边选第一种权值,n-K-1条边选第二种权值,问树的直径最小是多少。 一开始的想法是设F[x][y]为x的子树中共y个边选了第一种权值时最长链最小为多少。直接DP求解。但是在节点上合并的时候会出现问题。因为不一定这K条边都在直径 阅读全文
posted @ 2020-07-24 10:25 Hzoi_joker 阅读(170) 评论(0) 推荐(0) 编辑
摘要: 题意: 给你一个 n 个点的图的邻接矩阵 ( n<=300 ) ,其中每个元素都有 1/S (20<=S<=100) 的几率出错,要求复原原图中那些点是在一个连通块里的。 QAQ正解不懂啊QAQ…… 所以我学会了乱搞。 由于出错的几率最大只有 1/20 ,我们可以大胆猜想出错的其实很少,所以我们对于 阅读全文
posted @ 2020-07-22 21:22 Hzoi_joker 阅读(264) 评论(0) 推荐(0) 编辑
摘要: 题意: 原串为长度为n(2e6)的 012345678901…… 每次将p[i]位置修改为d[i]形成一个新的串,然后继续在新的串上操作,共n次。 求总共n+1个串的排名 这道题上来一看毫无头绪,考场上也就没细想…… 这道题有一个很美妙的性质,就是p[i]是一个排列,这就意味着每个位置只会改变一次, 阅读全文
posted @ 2020-07-22 20:05 Hzoi_joker 阅读(244) 评论(0) 推荐(0) 编辑
摘要: 题意 给一张n个点m条边的无向图,一开始 i 号点属于第 i 个集合,每次对一个集合进行操作,将与该集合中的点相连的点所处的集合归到该集合中,有无效操作,Q次操作过后询问每个点所处集合。 看到这道题首先想到的就是并查集,但是无法快速能够向集合外连边的点。 我们可以发现这样一个性质,一个点作为集合边上 阅读全文
posted @ 2020-07-19 10:01 Hzoi_joker 阅读(228) 评论(0) 推荐(0) 编辑
摘要: 题意: 实现一个数据结构,支持 1、插入一个整数x 2、删除一个整数x 3、给定一个整数x,问x是否可以和这个数据结构中的两个数组成三角形。 我们可以发现这样一个性质,如果存在解,那么一定有一个解中与x组成三角形的两个数大小相邻。 那么事情就好办了,我们只要维护这个数据结构中大小相邻的两数之差和之和 阅读全文
posted @ 2020-07-14 11:37 Hzoi_joker 阅读(257) 评论(0) 推荐(0) 编辑
摘要: 题意: 给一个长为n的序列A,一个长为m的序列B,要求计算有多少个i(1<=i<=n-m+1),使得A[i+j-1]>=B[j](1<=j<=m) 当时第一反应是魔改KMP,用next数组求答案,然后各种魔改各种WA,遂放弃。 我们考虑利用bitset求解。 我们先求出长为m的bitset F[i] 阅读全文
posted @ 2020-07-14 11:25 Hzoi_joker 阅读(385) 评论(0) 推荐(1) 编辑
摘要: 题意: 给定一个无向图,问能否从中选出一些边构成新图,使得每个点的度数为di,1<=di<=2,可以输出Yes,否则输出No。n<=50,m<=100 100组数据 当时第一反应是网络流,发现不可行之后尝试分析性质,发现最终的图一定是由一些环和一些链构成,尝试搜索+剪枝无果,后来想把这道题转化为01 阅读全文
posted @ 2020-07-13 10:28 Hzoi_joker 阅读(395) 评论(0) 推荐(0) 编辑
摘要: E-Expeditious Cubing Kattis - expeditiouscubing 为了方便,我们将四个数从小到大设为x1,x2,x3,x4,先判断必输和必胜。 必输:t1+t2+t3>t*3 必胜:t2+t3+t4<=t*3 否则解就是t*3-t2-t3。不过要注意精度问题。 1 #i 阅读全文
posted @ 2020-05-27 10:39 Hzoi_joker 阅读(364) 评论(0) 推荐(0) 编辑
摘要: A-odd Palindrome Gym - 101615A 签到,判断是否有两个相邻的字符相同即可 1 #include<iostream> 2 #include<cstdlib> 3 #include<cstdio> 4 #include<cstring> 5 #include<algorith 阅读全文
posted @ 2020-05-21 12:10 Hzoi_joker 阅读(227) 评论(0) 推荐(0) 编辑
摘要: D-Guess the Path Gym - 102443D by myl 交互题,二分 一开始只有(1,1)和(m, n)可以确认 每一次对于相邻的两个块,选取“5”字型的路线,先下到中线,再向右,在向下,可以发现中线上必有符合要求的点 每一次询问,都至少会确认三个点,同时点与点之间的范围减少一半 阅读全文
posted @ 2020-05-09 09:23 Hzoi_joker 阅读(279) 评论(0) 推荐(0) 编辑
摘要: C-Evolution Game Gym - 102091C by wxh 按单增的维度排序,然后另一个维度DP,就和最初的n^2求最长递增子序列相似。N^2跑就行 1 #include <bits/stdc++.h> 2 using namespace std; 3 struct data { 4 阅读全文
posted @ 2020-05-05 10:06 Hzoi_joker 阅读(174) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 ··· 22 下一页