[题解]Magic Line-计算几何(2019牛客多校第三场H题)
摘要:题目链接:https://ac.nowcoder.com/acm/contest/883/H 题意: 给你偶数个点的坐标,找出一条直线将这n个点分成数量相等的两部分 并在这条直线上取不同的两个点,表示这条直线 思路: 看见这题的第一反应是,先定一个相对这些点无限远的定点 然后取扫一遍,取一个其中一个
阅读全文
[题解]Crazy Binary String-前缀和(2019牛客多校第三场B题)
摘要:题目链接:https://ac.nowcoder.com/acm/contest/883/B 题意: 给你一段长度为n,且只有 ‘0’ 和 ‘1’ 组成的字符串 a[0,...,n-1]。求子串中 ‘0’ 和 ‘1’ 数目相等的最大长度,子序列中 ‘0’ 和 ‘1’ 数目相等的最大长度。 思路: 子
阅读全文
[数论]快速幂取模
摘要:问题描述: 已知底数a,指数b,取模值p,求 ab % p 的值 朴素算法 设初始值为1,循环b次,每次乘上a后再取模一下 时间复杂度为O(n),虽然看着不高,但是一旦指数给得过大,肯定会TLE 这里代码就不给出来了,就是一个简单的循环 快速幂 先不讨论取模,根据幂运算可知 当b为偶数时:ab=a(
阅读全文
[模板]大整数乘法——累加型
摘要:1 #include 2 using namespace std; 3 typedef long long ll; 4 #define N 10000 5 6 int main() 7 { 8 char a[N],b[N]; 9 int aa[N],bb[N],mul[N]; 10 memset(aa,0,sizeof(aa)); 11 ...
阅读全文
[动态规划] 最大子段和问题
摘要:问题描述: 给定长度为n的整数序列,a[0...n-1], 求某个子区间[i,j]使得a[i]+…+a[j]和最大. 空间优化后的动态规划: 用两个变量sum和ans,sum用来保存当前的子段和,ans用来记录最大的子段和。 循环遍历,如果当前子段和 > 最大子段和,那么更新最大子段和;如果当前子段
阅读全文