自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 取最值

参照题解, 但他这个是 凸 的 题目描述 今有一两行n列的长矩阵,其中的数有正有负,均不超出整数的范围。小明想从这个长矩阵中圈出一个“凹”字形(可正可倒),使得这个“凹”字形中的所有数之和尽可能大,请问能达到的最大值是多少? 输入 输入第一行包含一个整数n,即矩阵的列数,n小于1000000。以下两行,每行包含n个数,用来描述这个矩阵。所有数在整数范围内。 输出 输出包含一行一个数,即求出的最...

2020-03-20 18:08:51 277

转载 马拉车算法模板

大佬博客 马拉车用于解决最长回文子串问题,重点是子串,而不是子序列,想了解最长回文子序列的可以看下这篇博客传送门。对于这种问题,当然最简单粗暴的方法就是暴力求解,但太暴力也不好,毕竟会TLE。所以对于求最长回文子串的问题有一种神奇的算法——马拉车算法,神奇就神奇在时间复杂度为O(n)。 我先说一下大概思路,就是用一个Len[i]数组去存第i个位置到mx位置的长度,然后用id记录上一次操作的位置,m...

2020-03-20 14:35:01 620

转载 凸包模板

凸包算法(Graham扫描法)详解 先说下基础知识,不然不好理解后面的东西 两向量的X乘p1(x1,y1),p2(x2,y2) p1Xp2如果小于零则说明 p1在p2的逆时针方向 如果大于零则说明 p1在p2的顺时针方向 struct node{ double x,y; node friend operator -(node a,node b)//对减法符号进行重载 ...

2020-03-17 00:09:00 123

原创 F - Perils in Parallel

类似于差分异或前缀和, 将区间操作连成图, 跑一便 #include <bits/stdc++.h> using namespace std ; const int N = 2e5 + 10 ; int a[N] , b[N] , c[N] , d[N] ; int n , m ; int h[N * 2] , ne[N * 2] , e[N * 2] , w[N * 2] , vi...

2020-03-13 23:55:03 180

原创 F. Maximum White Subtree 树形dp*换根

大佬博客 #include <bits/stdc++.h> using namespace std ; const int N = 2e5 + 10 ; int ans[N] , a[N] , dp[N] ; vector<int> v[N] ; int dfs(int u , int fa) { dp[u] = a[u] ; for(auto x : v[u])...

2020-03-13 23:46:11 128

原创 D - Manga Market 思维加01背包

Social Infrastructure Information Systems Division, Hitachi Programming Contest 2020 并且, 其中的a如果不等于0 , 那么肯定a >= 1 , 如果在t 时间访问完ai 那么下一个访问完花费时间是 ( t + 1 ) * aj + bj + t , 这就相当于两倍的t还多 , 照这样加些去, 会变成4t ...

2020-03-09 18:37:52 198

原创 E - Divisible Substring AtCoder Beginner Contest 158

abcd % p = ( a * 1000 % p + b * 100 % p + c * 10 % p + d * 1 % p ) % p #include <bits/stdc++.h> using namespace std ; int a[10100] ; int main() { int n , m ; string s ; cin >> n &g...

2020-03-08 12:42:15 433

原创 两圆相交板子

vector<Pair> calc(double x1 , double y1 , double r1 , double x2 , double y2 , double r2) { x1-=x2,y1-=y2; double S=x1*x1+y1*y1,a=(S+r2*r2-r1*r1)/2,D=S*r2*r2-a*a; if(D<0) return {}; d...

2020-03-06 22:51:31 134

原创 高精度求组合数

#include <iostream> #include <vector> using namespace std; const int N = 5500 ; int prime[N] , sum[N] , tot; bool st[N]; void get_prime(int n) { for(int i = 2;i <= n;i ++) { ...

2020-03-06 15:25:25 520

原创 lucass定理

#include<iostream> using namespace std; typedef long long LL; int n,p; int qmi(int a,int k) { int res=1; while(k) { if(k&1) res=(LL)res*a%p; a=(LL)a*a%p; ...

2020-03-06 15:24:46 150

原创 康托展开与康托逆展开

#include <bits/stdc++.h> using namespace std ; //返回数组a中当下顺序的康拖映射 typedef unsigned long long ll ; ll b[30] ; //对前 10 个自然数(0 ~ 9)的阶乘存入表 //以免去对其额外的计算 ll fact[22] ; /** * @brief 康拓展开 * * @param[i...

2020-03-06 15:11:04 131

原创 FFT变换

a * b 用快速傅里叶变换求解 #include <cmath> #include <cstdio> #include <iostream> #define il inline #define MAXN 200100 using namespace std ; char s1[MAXN], s2[MAXN] ; int N, M, K, res = 0, ...

2020-03-05 15:02:52 183

原创 Codeforces Round #625 Div. 1 Problem C

Problem C - World of Darkraft: Battle for Azathoth Roma is playing a new expansion for his favorite game World of Darkraft. He made a new character and is going for his first grind. Roma has a choice...

2020-03-02 22:27:49 188

空空如也

空空如也

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

TA关注的人

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