首页 > TAG信息列表 > hdu
HDU 5266 pog loves szh III 题解
错误示范:倍增+暴力 开始看到这题时限 6s 本来想着来一发暴力区间倍增 LCA,后来发现是多测之后自然凉凉,准保 T 飞。 然而没有 T,acc 上 RE(ReCoders),HDU WA。 正解:树剖+线段树 维护区间你想到了什么?当然是线段树啊! 分别考虑线段树的 build 和 query 操作。 build:递归,然后 pushup 维护2022 HDU多校9
Arithmetic Subsequence(二进制、思维、分治) Problem 给定一个长度为\(n\)的序列,问是否可以对它重新排序使得重排后的序列中不存在等差子序列 Solve 如果一个数出现了\(3\)次及以上,一定无解 若\(a_i,a_j,a_k\)成等差数列,那么\(a_i\)和\(a_k\)奇偶性相同,所以如果把偶数放到左边,奇2022 HDU多校8
Theramore(思维) Problem 给定一个01串,可以进行无限次操作,每次操作可以把一个长度为奇数的区间翻转,问可以得到的字典序最小的01串是多少 Solve hit1:反转后奇数位置还是在奇数位置,偶数位置还是在偶数位置 因此上面操作其实相当于我们可以把一个奇数位置移动到任意奇数位置,偶数位2022 HDU多校5
Pandaemonium Asphodelos: The First Circle (Savage)(数据结构) Problem 有一行长度为\(n\)个格子,一开始每个格子的颜色都是\(0\),并且权值都也是\(0\),现在有\(q\)次操作,每次操作有\(4\)种类型 1 x c:把与第\(x\)格子和距离最近第\(x\)格子最近的\(2c\)个格子染上一种新的颜色 2 x2022 HDU多校4
Link with Bracket Sequence II(区间 DP) Problem 有一个长度为\(n\)的括号序列,括号种类有\(m\)种,现在这个括号序列丢失了一些括号,问可能的合法括号序列个数 (和)可以匹配当且仅当它们的种类一样 \(A\)是合法的,\(x,y\)是某种括号,那么\(xAy\)是合法的当且仅当\(x,y\)匹配 \(A、B\)HDU 7213 - Cyber Painter
题面传送门 就这?HDU 多校最难的题就这?真是搞不懂为啥现场只有 9 个人过( 直接枚举正方形四个角的状态、以及正方形的边长,考虑如何钦定每条边上的状态,我们枚举横着的边上有多少个 \(15\),那么横着的边中剩余的部分必须要用既有左边又有右边的部分填补,而竖着的边只能用剩余的 \(15\)HDU多校第五场 P7187(分层图建虚拟原点)
Slipper &ebsp; 题意: 我们知道有\(n\)个节点,有\(n - 1\)条边,所有的点形成了一棵树,每一个点到下一个点都有代价\(cc\),我们也有一个操作,可以将满足\(\left\vert depth_i - depth_j\right\vert = k\)的所有点联通,连起来的新的边的代价是\(c\),要我们求从出发点到目的地的最小代价是hdu 2639 Bone Collector II
题目链接:https://vjudge.net/problem/HDU-2639 题目大意:求一个0-1背包中第k个最优解 思路: 将最优解的个数也作为背包的一维来进行递推,只不过递推的依据需要额外的两个数组来记录在相同体积下的第s次最优解 1 # include<iostream> 2 # include<bits/stdc++.h> 3 usHDU-3830 Checkers
Checkers 思维 + 倍增LCA 隐式建图 考虑排序好的大小 \(a\), \(b\), \(c\) 如果 \(b - a = c - b\):只有两种情况转移,中间的往左边或者右边跳 如果 \(b - a \ne c - b\):除了上述的情况,还有两边通过中间跳 第二种情况显然可以被认为是其上一个状态,通过中间那个跳珠往两边跳造Vjudge-Find Metal Mineral(HDU - 4003)
written on 2022-04-13 树形背包题,写一篇题解总结一下 题意:给一棵 \(n\) 个节点的树, 节点编号为1 ~ \(n\) , 每条边都有一个花费值. 有 \(k\) 个机器人从 \(S\) 点出发, 问让机器人遍历所有边,最少花费值多少? 因为树形背包的题确实做得不多,掌握的不是很好,刚开始并没有什么思路。Vjudge 20220421练习10 B Joyful HDU - 5245
written on 2022-04-22 题目描述: 有一个含有M*N个格子的矩形,每次随机两个点(x1,y1)(x2,y2),把这两个点构成的子矩阵内的格子都染色。随机染K次,求最后被染色格子的期望个数。 期望题,拿到题目后,因为是求被染色的格子的期望个数,那么这个期望显然就是每个格子被染色的概率乘以 \(1\) 然Vjudge 20220421练习10 D - Maze HDU - 4035
written on 2022-04-22 题目描述: 有n个房间,由n-1条隧道连通起来,从结点1出发,开始走,在每个结点i都有3种可能: 1.被杀死,回到结点1处(概率为ki) 2.找到出口,走出迷宫 (概率为ei) 3.和该点相连有m条边,随机走一条 求:走出迷宫所要走的边数的期望值。 PS:题目中的边数指的是共走过的边数,那么被杀HDU 7171 - Range Reachability Query(分块 bitset)
题面传送门 一道感觉思路挺自然的题,不知道为什么赛时只有三个队过(?) 首先这题肯定严格强于有向图任意两点连通性对吧,所以此题 std 时间复杂度肯定不低于有向图任意两点连通性的复杂度,即 \(\dfrac{nm}{\omega}\),而此题 \(5\times 10^4\) 的数据范围肯定 \(n^2\) 不可能过,因此 bitset2022杭电多校 2H / HDU 7157 - Keyboard Warrior (KMP)
Problem Link 题意 给定一个长度为 \(n\) 的字符串 \(S\) 及 \(m\) 次操作,初始时打字机为空 每次操作可以往打字机上的字符串尾部按顺序添加 \(k\) 次字符 \(ch\),或是从打字机上的字符串尾部删去 \(k\) 次字符(即键盘 Backspace) 问是否存在一个时刻,使得字符串 \(S\) 是打字机上的2022杭电多校 2H / HDU 7157 - Keyboard Warrior (KMP)
Problem Link 题意 给定一个长度为 \(n\) 的字符串 \(S\) 及 \(m\) 次操作,初始时打字机为空 每次操作可以往打字机上的字符串尾部按顺序添加 \(k\) 次字符 \(ch\),或是从打字机上的字符串尾部删去 \(k\) 次字符(即键盘 Backspace) 问是否存在一个时刻,使得字符串 \(S\) 是打字机上的HDU 多校 2022 游记
在 XJ 501 机房打。 队伍: team1093 学军中学二队 为什么有二队而没有一队,这是一个问题。 Day 1 我们原来是打算九个人打。 因为今天隔壁机房的人搬迁过来,机房里充满了快活的气息。 因为隔壁机房的人加入进来,机房里感觉有十几个人在打。 感觉非常 exciting 啊! 由于 12:00 - 17:0HDU - 1495 非常可乐 【搜索、分类讨论】
题目简述 大家一定觉的运动以后喝可乐是一件很惬意的事情,但是seeyou却不这么认为。因为每次当seeyou买了可乐以后,阿牛就要求和seeyou一起分享这一瓶可乐,而且一定要喝的和seeyou一样多。但seeyou的手中只有两个杯子,它们的容量分别是N 毫升和M 毫升 可乐的体积为S (S<101)毫升 (正好「题解」sdfzoj contest5 A. 亚log欧拉函数求和问题 (HDU 5728 加三个 0)
给定 \(n,m\),保证 \(\mu^2(n)=1\),求: \[\sum_{i=1}^m\varphi(in) \]模 \(10^9+7\),\(n\leq 10^{10},m\leq 10^9\). 对于把 \(\varphi(in)\) 拆开,比较经典的是考虑每个质因子 \(p\) 的贡献,则有: \[\begin{aligned} &\sum_i^m\varphi(in) \\ =&\sum_i^m\frac{\varHDU-3966 Aragorn's Story
Aragorn's Story 树链剖分模板 维护两个点之间路径的值,剖分之后用线段树 区间修改 单点查询 注意初始化(不会有人没初始化边,然后 MLE 了半个小时吧) (为什么是 MLE 而不是 RE!!小编也不太清楚,小编也很想知道,[狗头]) #include <iostream> #include <algorithm> #include <vector> using nHDU 2176 取(m堆)石子游戏
\(HDU2176\) 先取者负输出\(No\).先取者胜输出\(Yes\),然后输出先取者第\(1\)次取子的所有方法.如果从有\(a\)个石子的堆中取若干个后剩下\(b\)个后会胜就输出\(a\) \(b\) #include <bits/stdc++.h> using namespace std; const int N = 200010; int a[N]; int main() { intHDU 1796 How many integers can you find
题目链接 测试提交 一、容斥典型问题 求在给定区间内,能被给定集合至少一个数整除的数个数 二、解题思路 将给出的\(n\)个整除的数进行二进制枚举(\(2^n\)),计算\(a_i\)所能组成的各种集合(这里将集合中\(a_i\)的最小公倍数作为除数)在区间中满足的数的个数,然后利用容斥原理实现加减HDU 3501 Calculation 2
题目链接 测试提交 一、题意 求解\(1\sim n\)与\(n\)不互质的数的和。 二、欧拉函数解法 定义:欧拉函数是小于\(n\)的数中与\(n\)互质的数的数目。 例如\(φ(8)=4\),因为\(1,3,5,7\)均和\(8\)互质。 \(sum(n)=\phi(1)+\phi(2)+\phi(3)+...+\phi(n-1)+\phi(n)\) 利用欧拉函数即可求解Bone Collector (HDU - 2602 )
Many years ago , in Teddy’s hometown there was a man who was called “Bone Collector”. This man like to collect varies of bones , such as dog’s , cow’s , also he went to the grave …The bone collector had a big bag with a volume of V ,and along his trip o(HDU - 1003 )Max Sum
Given a sequence a[1],a[2],a[3]......a[n], your job is to calculate the max sum of a sub-sequence. For example, given (6,-1,5,4,-7), the max sum in this sequence is 6 + (-1) + 5 + 4 = 14. Input The first line of the input contains an integer T(1<=T<HDU-1527 取石子游戏
取石子游戏 威佐夫博弈 板子加规律题,就很没办法 他们的差值与最小的那个值有黄金分割比例,最小的那个值比差值大 #include <iostream> #include <cmath> using namespace std; typedef long long ll; int main() { ll n, m; while(cin >> n >> m) { if(n > m)