自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(47)
  • 资源 (1)
  • 收藏
  • 关注

原创 莞中 2022暑假训练题04:树型DP

2022莞中暑假集训树型DP专题笔记

2022-08-11 14:54:49 112 1

原创 FHQ-Treap 简介

FHQ-treap 即非旋Treap,是一种短小精悍,功能丰富的平衡树。据说它的效率介于 Treap 和 Splay 之间(可能是我的FHQ常数比较小,跑得比我的Treap还快)。它可以实现 Splay 可以实现的所有功能,包括平衡树的基本操作和区间翻转操作。它的实现难度比 Splay 要简单很多,没有 Splay 那么多转来转去的操作,不会令人头晕,而且FHQ代码的对称性良好,易于调试。有两种 FHQ-Treap,一种是按值为关键字的,一种是按下标为关键字的(适用于区间翻转等操作时)。...

2022-08-11 14:52:51 751

原创 莞中 2022暑假训练题02:平衡树

2022莞中暑假集训平衡树专题题解

2022-08-11 14:51:44 274

原创 莞中 2022暑假训练题01 最小费用最大流

2022莞中暑假集训最小费用最大流笔记

2022-08-11 14:50:19 171

原创 zwm 2022 纪中集训游记

废材东莞信息生于2022暑假在纪中集训游记

2022-07-12 21:08:38 490

原创 判断勾股数

勾股数定义:又名毕氏三元数 。勾股数就是可以构成一个直角三角形三边的一组正整数。勾股定理:直角三角形两条直角边a、b的平方和等于斜边c的平方(a²+b²=c²)c++实现bool is_Pythagorean_triple(int a,int b,int c)//传入三条边{ int pow_a=a*a,pow_b=b*b,pow_c=c*c;//求他们的平方 if(pow_a+pow_b==pow_c) return true; if(pow_a+pow_c==pow_b)

2020-08-21 20:10:44 1645

原创 摄氏度&华氏度互化

摄氏度&华氏度互化知识:1 摄氏度=33.8 华氏度华氏度转摄氏度double f_to_c(int f){ double c=(5*(f-32))/9; return c;}摄氏度转华氏度double c_to_f(int c){ double f=(5/9)*c + 32; return f;}

2020-08-21 19:25:21 167

原创 归并排序【模板】

归并排序时间复杂度:O(log2n)流程1.分界点为中点:mid=(left + right)/22.分别递归排序两边3.归并——合二为一 O(n)这里我们就得到了两个排好序(从小到大),然后:再开出一个数组res,用i,j两个指针分别指向第一个第二个的开头比较i1与j1,不妨设i1小于j1,这时将i1放进res的第一个位置将i指针右移一位,指向i2比较i2与j1,不妨设j1小于i2,这时就将j1>放人res的第二位如此类推…如果当某一段的数放完了,另一段还有

2020-08-08 23:07:45 109

原创 一维前缀和与二维前缀和

前缀和什么是前缀和?前缀和是一个数组的某项下标之前(包括此项元素)的所有数组元素的和。作用:快速求出某一段区间的总和such as:求出a[3]+a[4]+…+a[15]=sum[15]-sum[2] //sum为前缀和优势:可以在O(1)的复杂度求出某一部分的总和设b[]为前缀和数组,a[]为原数组,根据这句话可以得到前缀和的定义式和递推式:【一维前缀和】根据上面的定义,我们可以很容易得到 sum[i] = sum[i-1] + a[i]   这样就可以得到前i个数的和

2020-08-08 23:01:19 84

原创 快速排序[模板]

快速排序确定分界点x:方法:q[l] //左端点q[r] //右端点q[(l+r)/2] //中点q[随便] //任意2.调整区间:把<=x的和>=x的分开(x随意,放两边都可以)暴力实现:int a[],int b[]; //a装<=x,b装>=xmemset(a,0x3f3f3f3f,sizeof(a));memset(b,0x3f3f3f3f,sizeof(b));for(int i=l;i<=r;

2020-08-08 22:53:36 100

原创 快速幂详解【模板】

快速幂洛谷链接AcWing链接快速幂的思想当我们求37时朴素算法就是Pow,或者连乘7次,这个要进行7次运算但我们可以用快速幂的思想31=332=933=81然后再将三次的值相加,就可以求出37这个思想还可以用于这道题 64位整数乘法这个思想非常高效,可以将原来O(n)的算法改成O(log2n)快速幂的模板int qmi(int m, int k, int p){ int res = 1 % p, t = m; while (k) {

2020-08-04 20:21:22 122

原创 判断回文数[模板]

要求: 判断一个数是否为回文数bool isPalindrome(int x) { if(x<0) return 0; int tmp=x;//x最后会变 long long res=0; while(x)//把每一位扣出来 { res=res*10 + x%10; x/=10; } return res==tmp; }

2020-07-22 23:10:39 77

原创 增减序列(IncDec Sequence)

增减序列题意:给定一个长度为 n 的数列 a1,a2,…,an,,每次可以选择一个区间 [l,r],使下标在这个区间内的数都加一或者都减一。求至少需要多少次操作才能使数列中的所有数都一样,并求出在保证最少次数的前提下,最终得到的数列可能有多少种。分析:每次任意选两个数,一个加上1,另外一个减去1把b[2]到b[n]都变成0情况1: 2<=i,j<=n,选b[i]和b[...

2020-05-07 22:20:23 470

原创 完全背包笔记【优化】

优化后的完全背包PS:DP优化的根本就是等价变形AcWing链接优化前#include <bits/stdc++.h>using namespace std;int n,v;int c[1005],w[1005];int f[1005][1005]; int main(){ scanf("%d%d",&n,&v); for(int i=1;...

2020-04-27 22:40:55 132

原创 完全背包笔记

完全背包1.状态表示a.集合:所有从第i个物品开始选,总体积不超过j的物品的集合b.属性:max2.状态计算:a.f[i]的子集划分只要总体积不超过j就可以一直选如上图,在1到i中选,且总体积小于等于j,但第i个物品只能选0个,所以不选第i个物品故最大值为f[i-1,j]ps:做所有DP问题的时候,核心就是这个集合的定义三重简化成2重的推导过程总体推导过程:核...

2020-04-27 22:03:52 78

原创 P1036 选数 【洛谷】

原题链接-------------------------------------------------------------------------------------------------------------------------------------------------------------------------CODE:#include <bi...

2020-04-25 11:50:36 105

原创 P1307 数字反转【洛谷】

原题​#include <bits/stdc++.h>using namespace std;string a;int main(){ cin>>a; int len=a.length(); int i=len-1; while(a[i]=='0') { a[i]=' '; i--; } len=i+1; if(a[0]=='-')...

2020-04-04 22:11:15 175

原创 【洛谷】 P1941 飞扬的小鸟 (题解)

题目链接这题关于DP用f[i][j]表示横坐标为i时高度为j的最少点击次数。用正无穷来表示不可能达到这个状态。于是我们可以分析出状态转移的方式:上升——完全背包转移方式下降——01背包转移方式超过m变为m——特判细节详见代码#include <cstdio>#include <iostream>#include <algorithm>us...

2020-02-25 17:50:32 153

原创 【洛谷】P1120 小木棍 [数据加强版](题解)

P1120 小木棍 [数据加强版]题解:#include <cstdio>#include <cstdlib>#include <iostream>int n, cnt, tot, maxn, minn, tm[70];void dfs(int res,int sum,int target,int p){ if(res == 0) {...

2020-02-18 17:40:37 128

原创 【codeforces】CF11A Increasing Sequence (题解)

CF11A Increasing Sequence入门题,就不解释了题解:算法复杂度为O(n)#include <iostream>#include <algorithm>using namespace std;int a[2001];int main(){ int n,b,ans; cin>>n>>b;...

2020-02-16 18:01:21 311

原创 【Codeforces】CF1B Spreadsheets (题解)

CF1B Spreadsheets题解:#include <bits/stdc++.h>using namespace std;char x[1000010];int main() { int n,i,j,k; cin>>n; for(i=1; i<=n; i++) { bool tt=true; cin>>x; int ...

2020-02-16 13:53:55 237

原创 【Codeforces】CF25A IQ test

CF25A IQ test题解:#include <iostream>using namespace std;int a[101];int main(int argc, char **argv){ int n; cin>>n; cin>>a[1]>>a[2]>>a[3];//先输入三个数 ...

2020-02-16 13:50:43 176

原创 【Codeforces】CF25A IQ test (题解)

题目链接由于此题过于水,所以就不解释了直接上题解题解:#include <iostream>using namespace std;int a[101];int main(int argc, char **argv){ int n; cin>>n; cin>>a[1]>>a[2]>&gt...

2020-02-16 13:47:43 424

原创 【codeforces】CF11B Jumping Jack (题解)

大水题让我们介绍一下STL库中的绝对值函数-----------abs()abs()是一个c++自带的绝对值函数,作用是将一个数取绝对值示例:#include <cstdlib>#include <cstdio>int main(){ int number = -1234; printf("number: %d absolute value: %d\n";...

2020-02-15 18:09:39 428

原创 【codeforces】CF9C Hexadecimal's Numbers (题解)

CF9C Hexadecimal's Numbersせむすけヌ题解:#include<iostream>#include<cstdio>using namespace std;int a[100],ans,n;int pow_(int a,int b){ int s=1; for(int i=1; i<=b; i++) s*=a; ret...

2020-02-15 17:21:29 202

原创 【洛谷】P2404 自然数的拆分问题 (题解)

P2404 自然数的拆分问题题解:#include <iostream>using namespace std;int n,sum;int a[15]={1};void print(int t){ for(int i=1;i<t;i++) { cout<<a[i]<<"+"; } cout<<a[t]<&l...

2020-02-14 16:19:38 468

原创 【洛谷】P1118 [USACO06FEB]数字三角形`Backward Digit Su (题解)

P1118 [USACO06FEB]数字三角形`Backward Digit Su`…第一次看到这个题的感受 :题解:#include <bits/stdc++.h>using namespace std;int n,sum;int ha[13],flag,yh[13][13];bool v[13];void print(){ for(int i=1; ...

2020-02-14 15:07:21 98

原创 【洛谷】P1023 税收与补贴问题 (题解)

P1023 税收与补贴问题题解:#include<iostream>#include<vector>#include<algorithm>using namespace std;int s, a, b, d, n = 0;int a1, a2, a3, b1, b2, b3;bool judge(int x){ int c1 = (a1...

2020-02-14 14:55:18 187

原创 【codeforces】题解 CF10A Power Consumption Calculation(题解)

模拟排序概率论解模拟题的方法:(1)认真仔细的读懂题目。模拟题的描述通常都比较详细,篇幅一般都比较长,应该边阅读边将有关的条件一条条地记录下来,阅读完成后要反复核对,绝对不能有错漏。(2)建立各个条件之间的关系,最好用一些简明的表格列出。(3)认真分析这些关系,并建立这些关系的数学模型。(4)规划各个模块的结构,用相应的语言、逐步求精的方法描述具体的算法。(5)编写程序,调试并运行...

2020-02-13 15:57:48 244

原创 【codeforces】 CF4C 【Registration system】(题解)

哈希表若关键字为k,则其值存放在f(k)的存储位置上。由此,不需比较便可直接取得所查记录。称这个对应关系f为散列函数,按这个思想建立的表为散列表。对不同的关键字可能得到同一散列地址,即k1≠k2,而f(k1)=f(k2),这种现象称为冲突(英语:Collision)。具有相同函数值的关键字对该散列函数来说称做同义词。综上所述,根据散列函数f(k)和处理冲突的方法将一组关键字映射到一个有限的连续...

2020-02-13 13:56:28 263

原创 【洛谷】P1024 一元三次方程求解 (题解)

P1024 一元三次方程求解题解:#include <bits/stdc++.h>using namespace std;int main(){ double a,b,c,d; cin>>a>>b>>c>>d; for(double i=-100;i<=100;i+=0.001) { ...

2020-02-12 16:27:04 188

原创 【洛谷】P1072 Hankson 的趣味题 (题解)

P1072 Hankson 的趣味题题解:提交效果图,亲试#include<cstdio>#include<iostream>#include<algorithm>#define ll long longusing namespace std;int prime[100001],n,size;bool notprime[100001...

2020-02-11 20:01:46 162

原创 【codeforces】CF5A Chat Server's Outgoing Traffic (题解)

CF5A Chat Server's Outgoing Traffic题解:#include<bits/stdc++.h>using namespace std;int ans=9,people ;int main() { string k;// while(getline(cin,k)) {// if(k[0]=='+') {// people+1;/...

2020-02-11 18:03:15 178

原创 CF4B Before an Exam

CF4B Before an Exam题解:#include<bits/stdc++.h>using namespace std;const int maxn=300+5;int n,sum,maxt[maxn],mint[maxn];int f[maxn][maxn];bool dp[maxn][maxn];void out(int i,int k) { if...

2020-02-11 17:33:43 169

原创 【Codeforces】CF3A Shortest path of the king (题解)

CF3A Shortest path of the king题解:#include<bits/stdc++.h>using namespace std;string s1,s2;int main() { cin>>s1>>s2; int x1=s1[0]-'a'+1,y1=s1[1]-'0',x2=s2[0]-'a'+1,y2=s2[1]-'...

2020-02-11 17:12:56 164

原创 【洛谷】P3955 图书管理员 (题解)

P3955 图书管理员题解:#include <bits/stdc++.h>using namespace std;int n,q,book[6666],len[6666],num[6666];int main() { cin>>n>>q; for(int i=1; i<=n; i++) { cin>>book[i]; }...

2020-02-11 16:45:53 570

原创 【洛谷】P1012 拼数 (题解)

P1012 拼数题解:#include<iostream>#include <cstring> using namespace std;string a[30]; int main(){ int n; cin>>n; for(int i=1;i<=n;i++) cin>>a[i]; for(...

2020-02-11 16:41:06 155

原创 【洛谷】P1093 奖学金 (题解)

P1093 奖学金题解:#include <bits/stdc++.h>using namespace std;struct node { int a; int b; int c; int d; int w;};bool f(node a,node b) { if(a.d<b.d) { return 0; } else if(a.d==b.d&...

2020-02-11 16:39:09 399

原创 【洛谷】P1068 分数线划定 (题解)

P1068 分数线划定 题解:#include<bits/stdc++.h>using namespace std;long long n,m,f=0,x=0,r=0;long long k[100000],s[100000];int main() { cin>>n>>m; f=1.5*m+0.5; f=f-1; for(int i=0...

2020-02-11 16:37:09 259

原创 【洛谷】P1158 导弹拦截(题解)

P158 导弹拦截题解:#include<bits/stdc++.h>using namespace std;struct ca{ int o,p;}o[100005];int cmp(ca a,ca b){ return a.o>b.o;}int cccc(int x,int y,int a,int b){ double d; ...

2020-02-11 16:35:00 243

从1到10000000的质数表.txt

从1到10000000的质数表,详细

2020-04-25

空空如也

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

TA关注的人

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