题目 分析 这道题开始我是想用回溯,但一看数据量,肯定会超时(指数级的时间复杂度)。没有思路,想着应该是dp,怎么进行转化,转为我们熟悉的问题呢?题目的意思就是说将数组分成两堆n1,n2,使得 n1 - n2 = S 。且有n1 + n2 = sum。由这两个式子可得 n1 + n2 = 2 * n ...
分类:
其他好文 时间:
2021-02-18 13:00:43
阅读次数:
0
前言: 本文参考《信息学奥赛一本通·金牌导航》。 正文: Manacher 算法: 概念: Manacher 算法,经常被称作马拉车,可以以 \(\mathcal{O}(n)\) 的时间复杂度求出字符串关于回文子串一类的问题。 介绍: 首先举个例子,设字符串 \(s=\texttt{bbdkd}\) ...
分类:
编程语言 时间:
2021-02-17 15:06:24
阅读次数:
0
考虑边分治。 边分治的时候考虑跨过中心边的点对 \((x,y)\) 的答案。考虑到 \(d_x+d_y-d_{lca(x,y)}\) 其实是 \(\frac{1}{2}(dix(x,y)+d_x+d_y)\) ,这下就跟 \(lca\) 没关系了。 显然在边分治的过程中 \(dis(x,y)\) 也 ...
分类:
其他好文 时间:
2021-02-17 14:59:55
阅读次数:
0
高斯消元解线性方程组 时间复杂度:O(\(n^3\)) https://www.luogu.com.cn/problem/P3389 题意:给定一个线性方程组,对其求解。 #include <bits/stdc++.h> using namespace std; const char nl = '\ ...
分类:
其他好文 时间:
2021-02-17 14:54:53
阅读次数:
0
组合数学 方法一:预处理 + 递推 \(C_a^b = C_{a-1}^b + C_{a-1}^{b-1}\) 时间复杂度:O(\(n^2\)) #include <bits/stdc++.h> using namespace std; const int MOD = 1e9 + 7; const ...
分类:
其他好文 时间:
2021-02-17 14:54:06
阅读次数:
0
给定一个整数数组 a,其中1 ≤ a[i] ≤ n (n为数组长度), 其中有些元素出现两次而其他元素出现一次。 找到所有出现两次的元素。 你可以不用到任何额外空间并在O(n)时间复杂度内解决这个问题吗? 示例: 输入: [4,3,2,7,8,2,3,1] 输出: [2,3] 来源:力扣(LeetC ...
分类:
编程语言 时间:
2021-02-17 14:53:13
阅读次数:
0
题目 给定一个范围在 1 ≤ a[i] ≤ n ( n = 数组大小 ) 的 整型数组,数组中的元素一些出现了两次,另一些只出现一次。找到所有在 [1, n] 范围之间没有出现在数组中的数字。您能在不使用额外空间且时间复杂度为O(n)的情况下完成这个任务吗? 你可以假定返回的数组不算在额外空间内。来 ...
分类:
其他好文 时间:
2021-02-17 14:19:02
阅读次数:
0
快速幂 (1)快速幂 求 \(a^k\ mod\ p\) 时间复杂度:O($\log$k) https://www.luogu.com.cn/problem/P1226 题意:求 \(a^k \ mod \ p\) #include <cstdio> #include <iostream> usin ...
分类:
其他好文 时间:
2021-02-17 14:14:44
阅读次数:
0
题目地址 A,B就不讲了 C 不妨设$a_i$为板离地面的高度,首先我们知道$a_1=0$且$a_n=0$ 很容易我们容易发现一条性质: $h_+a_<h_i+a_i+k$且$h_i+a_i<h_+a_+k$ 化简一下可以得到$max(0,h_+a_-k+1)\le h_i+a_i \le min( ...
分类:
其他好文 时间:
2021-02-16 12:18:20
阅读次数:
0
题意: 有$n$个村庄,村庄在不同坐标和海拔,现在要对所有村庄供水,只要两个村庄之间有一条路即可,建造水管距离为坐标之间的欧几里德距离,费用为海拔之差,现在要求方案使得费用与距离的比值最小。\(n<=1000\) ##思路: 经典的01分数规划求解最优比率生成树,在此题中稠密图采用暴力Prim求解。 ...
分类:
其他好文 时间:
2021-02-16 12:07:40
阅读次数:
0