自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 结构体排序重载小于号和cmp函数

//#include<bits/stdc++.h>#include <iostream>#include <stdio.h>#include <string>#include <cstring>#include <set>#include <queue>#include <math.h>#include <map>#include <algorithm>#include

2022-04-21 12:29:28 320

原创 01背包 牛客华为机试购物单

#include <iostream>#include <stdio.h>#include <string>#include <cstring>#include <set>#include <queue>#include <math.h>#include <map>#include <algorithm>#include <stack>#define ll long..

2022-04-14 19:59:58 322

原创 springboot

application.properties中的spring.profiles.active:可以切换配置文件@value有两个包都有![在这里插入图片描述](https://img-blog.csdnimg.cn/20210325091700775.png)@PropertySource(value = "classpath:")指定配置文件@ConfigurationProperties(prefix = "developer")配置文件中前缀为developer的注入配置文件默认先.

2021-03-25 09:18:39 104

原创 kmp未优化练习

#include <iostream>#include <stdio.h>#include <string>#include <cstring>#include <set>#include <math.h>using namespace std;int nex[3000];char s1[3000],s2[3000];void getnex(char s[]){ memset(nex,0,sizeof n

2020-09-24 23:00:32 88

原创 优先队列最小生成树prim

#include <algorithm>#include <iostream>#include <stdio.h>#include <string>#include <cstring>#include <queue>#include <map>#include <vector>#incl...

2019-11-16 20:51:08 293 1

原创 2018徐州icpc M

对于每个灯求其探照范围,用向量叉积来判断是否可以照到,题目给的多边形是逆时针的,设 灯为A点,多边形其中一边按逆时针方向来讲起始的点为B结尾的点为C那么(向量)AB x (向量)AC是负数就说明这边能被这个灯照到,所有的灯照的边都找到之后,就是贪心了,对于每个灯把他看做答案的起点,从这个灯照的范围找到一个灯泡,使当前光照范围最大,再从当前光照的区间找到下一个灯泡,使光照范围最大,以此类推的贪心下...

2019-10-15 20:55:22 254

原创 Max Sum Plus Plus HDU - 1024 dp+滚动数组

dp[i][j]=k 表示前 i 个数字在选取第 i 个数字的情况下取出 j 段的最大值为 k则分两种情况,当第 j 个数字是单独为一段时,当第 i 个数字是跟在 i-1 后面时所以 dp[i][j] = max( max(dp[0~i-1][j-1]) , dp[i-1][j] ) + a[j]因为 dp[i][j] 的求解只需要第 j 列和第 j-1 列,而且max(dp[0~i-1][...

2019-10-08 23:45:21 96

原创 Help Jimmy POJ - 1661 dp

dpl[i]=x 表示到达第 i 个阶梯的左端点需要的最少时间,dpr[i]=x 相应的久是到达第 i 个阶梯的右端点所需要的最少时间,对于第 i 个阶梯,往下搜寻距离在Max之内的阶梯,假设找到阶梯 j ,阶梯 j 可以使接住从阶梯 i 左端点跳下的人 ,那么到达阶梯 j 左端点的最短时间就是 dpl[j]=min(dpl[j] , 高度差加上走到 j 左端点的距离)dpr 也是一样的,每...

2019-10-06 17:02:48 110

原创 [POJ][1015]Jury Compromise 正确做法

dp[i][j]=k 表示选取 i 个人,其评价差之和为 j 的所有方案中总评价之和最大为 k三重循环,找出各种人数在各个评价差上的最大总评价之和,评价差最多就m202,因为是-20m到20m之间,所以区间平移,计算出来最大区间也不过800。错误做法中,path存储路径有缺陷,当要选择6个人时,碰到选择5个人的方案有两种评价差的和一样小,总评价的和一样大,这是path只会记录一种方案,而如果答...

2019-10-06 01:54:29 284

原创 POJ 1458 最长公共子序列dp

#include <iostream>#include <stdio.h>#include <string>#include <cstring>#include <set>#include <math.h>#define eps 1e-14#define pi acos(-1)#define ll long l...

2019-10-04 22:26:23 112

原创 2017icpc北京 Pangu and Stones(区间DP初学)

dp[i][j][k]表示区间 i 到 j 之间的数,合并为 k 堆的最小花费当k==1 dp[i][j][1]=min(dp[i][j][1],dp[i][k][v-1]+dp[k+1][j][1]+sum[j]-sum[i-1]);k>1 dp[i][j][v]=min(dp[i][j][v],dp[i][k][v-1]+dp[k+1][j][1]);其中v:l<=v<...

2019-09-25 00:16:11 139

原创 hdu 3065 ac自动机

把长串里面不是A到Z的全部变为一种字符,多组输入#include <bits/stdc++.h>#define eps 1e-14#define pi acos(-1)#define ll long long#define RD T*(rand()*2-RAND_MAX)#define Drand (long double)rand()/RAND_MAX#define L...

2019-09-21 21:42:26 74

原创 hdu 2896 ac自动机

#include <bits/stdc++.h>#define eps 1e-14#define pi acos(-1)#define ll long long#define RD T*(rand()*2-RAND_MAX)#define Drand (long double)rand()/RAND_MAX#define LINF 0x7f7f7f7f7f7f7f7f#d...

2019-09-21 20:46:43 75

原创 2019 ICPC 上海网络赛 D. Counting Sequences I

因为最多就13个非1数字出现,所以枚举2到3000,每个数字出现次数,中间的剪枝要注意的就是连乘之和不能大于6000,连乘之和已经大于6000或者还没选数字但是当前能选最小数字的平方已经大于6000就返回(int)pow(13,1)在我的codeblocks上居然是12,一直不知道错哪里,结果是精度原因。。。。。。。。#include <bits/stdc++.h>#define...

2019-09-18 21:30:26 158

原创 2019 icpc上海邀请赛 L. Digit sum(找规律)

给一个十进制的数n,把他转换成b进制,求从1到这个数n在b进制下每个数的每位数之和的总和。题解给的暴力打表就行了。我的解法就是找规律,大概就是先求n/b,这样就知道n的个位数出现了几轮,乘上1到9之和再乘上每个个位数出现的次数1,继续算剩下的没有出现完成一轮的个位数之和,顺便再加上十位,百位。。上的数字之和,还要乘上那个出现次数1,然后n/=b,并且n–(这里的n在个位数算过,所以删掉一),出...

2019-09-17 00:42:24 228

原创 hdu 2222 ac自动机初学

求父串中出现子串的次数#include <bits/stdc++.h>#define eps 1e-14#define pi acos(-1)#define ll long long#define RD T*(rand()*2-RAND_MAX)#define Drand (long double)rand()/RAND_MAX#define LINF 0x7f7f7f7...

2019-09-13 17:32:28 99

原创 欧拉降幂南京icpc

目前看来这个欧拉降幂的取模操作MOD函数需要在快速幂中使用,代替%号取模,m是模数,a应该是被取模数,但是根据图片,a应该是指数,等一个大佬。最后输出结果的时候还要再对m取模#include <bits/stdc++.h>#define eps 1e-14#define pi acos(-1)#define ll long long#define RD T*(rand()...

2019-09-11 22:53:04 96

原创 2019 南昌网络赛 Magic Master

两个迪杰斯特拉,卡在优先队列符号重载#include <bits/stdc++.h>#define INF 0x3f3f3f3f#define LINF 0x3f3f3f3f3f3f3f3fusing namespace std;typedef long long ll;const int maxn = 1e6+10;const int mod=998244353;...

2019-09-09 21:23:57 155

原创 hdu 6703 array

思路:在给的数组上建立主席树,改一下查询,查询L到R之间第一个大于等于k的数,再设一个set,把去掉的数放到set中,查询完主席树找set中最接近k的数,答案就是取上面两个数中的最小值#include <bits/stdc++.h>#define eps 1e-14#define pi acos(-1)#define ll long long#define RD T*(ran...

2019-08-26 21:14:01 237

原创 hdu 6695 2019 杭电多校十 1005 Welcome Party

题意:学生有歌唱能力值和相声能力值,每个学生参加歌唱或者相声其中之一,找参加歌唱比赛中歌唱能力值最大的和相声比赛中相声能力值最大的,求其差的绝对值使其最小比赛的时候处理不了重复数据的问题,就一直划水,看到别人用了个STL解决了这个问题,multiset,可以存储重复数据的集合,他的函数find可以在logn时间内找到需要的值的位置,还附带lower_bound函数可以用,就是注意他的erase函...

2019-08-23 10:01:42 230

原创 hdu 6681 2019 杭电多校九1002 Rikka with Cake(扫描线+树状数组)

题意:给一个矩形,在矩形内部有很多射线,这些射线的起点不会碰到矩形边界,问这些射线把矩形分成了几部分题解:分成的区域数等于线段交点数加一,推导还是看jls的题解把单说求交点个数的问题,我的方法就是扫描线+线段树/树状数组,但是树状数组不太了解,那就用树状数组做吧!1e9的数据肯定先离散化我把横线(平行于x轴的)当做枚举的对象,那些竖线(平行于y轴的)就记录他们的头尾,然后头设置值为1,尾设...

2019-08-20 21:22:23 163

原创 2019 杭电多校九 hdu 6685 Rikka with Coin(暴力)

题意:10 20 50 100 的硬币每个都有超级多,给你n个数,问你是否可以带最少的硬币凑出每一个数。有特殊的数据:110 40 60 50 答案是 50+20+20+20 不用拿一百的还有一种 :10 90 100 答案是 50+20+20+10 也不用拿一百的在不看百位数的时候三重for循环暴力10 20 50的硬币有多少个,10最多出现1个,20最多出现3个,50最多出现一个,对于 ...

2019-08-19 21:14:58 397

原创 2019杭电多校训练七 hdu 6653 Halt Hater

学大佬的暴力打表找规律,大佬打的表看不懂,自己打了一份。先看看表当a=8 b=9的时候,规律很明显了当a=8 b=8的时候规律是一样的经过测试当a<=b的时候,规律相同当a>b的时候规律发生变化,经过测试,当a>b && a<2*b 的时候规律相同当 a>= 2b 的时候,又一个规律把坐标轴分成四个部分,用那四个零点当原点,判断终点应...

2019-08-17 17:22:00 255

原创 hdu 6667 2019杭电多校八1011 Roundgod and Milk Tea

用到了Hall’s Marriage Theorem定理看大佬解释:通俗的说,就是大厅里有一群(n个)汉子和一群(n个)妹子在配对,每个汉子都会有一些心仪的妹子,每个妹子也有一些心仪的汉子,那么你想知道这2n个人能不能完全配对,只需要任意抓出一些汉子(妹子),看他们心仪的妹子(汉子)的个数是不是大于等于抓出来的这些汉子(妹子)的个数。如果我随便抓都满足这个条件,那么说明这2n个人是可以完全配对...

2019-08-15 22:32:31 125

原创 hdu 6635 2019杭电多校六 1002 Nonsense Time

从最后一个修改往前遍历,每次如果冻结的是记录中的最长上升子序列,就重新暴力一遍最长上升子序列并记录,注意记录的时候用path,lis只能求出长度,里面的数字不一定是最长上升子序列,复杂度因为是随机生成的序列,所以最长上升子序列长度平均为sqrt(n),修改的时候正好去掉当今最长上升子序列中的数的概率不高,出题人不卡特殊数据还把时间开了14秒,所以复杂度为n*sqrt(n)logn#include...

2019-08-09 22:23:10 124

原创 hdu 6638 2019多校训练六 1005 Snowy Smile

把点的y轴值离散化一下,假如离散完有Y个数字,那从1到Y,假设每一个数值当成矩形的下边界,然后在开一个循环,当下边界为1时,上边界为1 . 2 . 3 . 4 … Y,假设下边界为2时,上边界为 2 . 3 . 4 … Y。以此类推,每次对于上下边界的假设用线段树求一次最大字段和,建树用的值就是在上下边界内在同一个y轴上的x的和,共有X个,离散化x轴的值可得X,...

2019-08-08 23:39:06 118

原创 hdu 6628 2019多校五 1005 permutation1

因为题目就要求最后一万个,暴力8!的全排列,按差值排序,给的数超过8,就取第k小然后8个数字每个都加上倒数第九个数字,不到8就直接暴力排序吧。#include <iostream>#include <stdio.h>#include <string.h>#include <stdlib.h>#include <math.h>#...

2019-08-07 02:06:05 165

原创 hdu 6627 2019 多校训练五 1004 equation

给n个ai和bi,找 ∑|ai*x+bi|=c n个一元一次方程等于c的解,可能有多个可能没有,可能无限个对于每个 |ai * x + bi| 函数,可以看出来这是一个在x,y轴上,全部都在x轴上方的一个V字型图像,而这个V字型图像跟x轴只有一个交点,设其为gi, gi=-bi/ai,那就有n个gi,假设n个gi都不同,就把x轴分成了n+1个部分,而每个部分都有n个函数图像...

2019-08-07 02:00:10 114

原创 hdu 6620 数字华容道定理

没玩过数字华容道,网上找的,判断两张图能不能相等,把1234行按顺序插到前一行结尾,计算除0外的逆序对数,判断两张图0所在的行差和逆序数的奇偶性,相同就能到,而且其他博客都说80步,4*4的图就可到#include <iostream>#include <stdio.h>#include <string.h>#include <stdlib.h&g...

2019-08-02 19:55:55 419

原创 hdu 6616(思维)

给n个石头,每个石头都有一个权值,第i个石头的权值就是i,问把石头分成k堆,能不能使每一堆的权值和相等看别人博客写了个不知名的定理,只要n个石头的权值和能整除k,就一定可以分出来,那就分类讨论了:1 当 n=偶 && n/k=奇 这种时候权值和是不能整除k的,2 当 n=偶 && n/k=偶 这种时候是最简单的分k堆,即n个数,分k行,每行偶数个数,1和...

2019-08-02 19:49:33 404

原创 hdu 6621 (主席树)

不用离散化建立主席树,直接建树,二分绝对值ans,让主席树查找[p-ans,p+ans]之间的数是不是又k个,如果是,那么答案就是ans,加个build清空数组就从4秒到超时,虽然它确实没用。#include<algorithm>#include<iostream>#include<cstring>#include<cstdio>#incl...

2019-08-02 01:09:59 254

原创 hdu6623思维

把4000以内的质数打表,因为只有4000以内的质数的五次方在1e18之内,对每个数进行4000以内的质因子分解,求所用次数最小,要判断中途退出条件,时间卡的很紧,分解完质因子,若n还没有到1,说明他还有4000以上的质因子存在,并且质因子个数之和不会超过4个,特判:假设最少个数为4,那么就是某个数的4次方,简单,假设最少个数为3,那么就是某个数的3次方,二分求,二分写法不一样可能超时和wa,假设...

2019-08-01 16:55:26 146

原创 HDU 6601 Keen On Everything But Triangle(静态主席树)

找区间内三条边可组成周长最长的三角形,因为三角形边长关系,最坏情况就是斐波那契数,从1e9按斐波那契数递减,题解上说就44个,所以就暴力找区间内第k,k-1,k-2大数,判断其是否组成三角形保险开个long long ,根据hdu2665模板写的,那题题意真的问题很大,让我以为模板是找第k大的数,结果却是找第k小的,模板还要稍微改一下,特判当所给区间长度没有三直接输出负一,这里卡了一个小时#i...

2019-07-25 17:02:42 90

原创 HDU 2665 Kth number (静态主席树模板)

静态主席树,用于查找区间内第k大的数字,空间复杂度4*n+nlog2(n),时间复杂度(n+q)log2(n)#include<iostream>#include<cstring>#include<string>#include<cstdio>#include<vector>#include<queue>#inc...

2019-07-25 15:22:06 121

原创 Rain on your Parade HDU - 2389(二分+HK)

匈牙利算法复杂度o(VE),HK复杂度(sqrt(v)E),这题建图就要3000*3000,用二分优化完再匈牙利爆栈了,只能用HK了,这个模板原来用过,发现ny就没有用,nx是x方的点数#include<iostream>#include<cstring>#include<string>#include<cstdio>#include&lt...

2019-07-24 10:15:17 72

原创 棋盘游戏 HDU - 1281

每一行每一列当成一个点,找重要点的时候每个点判断一遍#include<iostream>#include<cstring>#include<string>#include<cstdio>#include<vector>#include<queue>#include<cmath>#include&lt...

2019-07-20 15:39:54 52

原创 Prime Independence LightOJ - 1356 (二分图+HK算法)

建图:奇数个质因子的数一边,偶数个质因子的一边,值相差一个质因子的两个点连线HK:匈牙利的优化版,套模板,讲解在代码里,从各个博客上拼起来的#include<iostream>#include<cstring>#include<string>#include<cstdio>#include<vector>#include&l...

2019-07-19 14:44:49 149

原创 The Accomodation of Students HDU - 2444(二分图判断+匈牙利)

染色法判断二分图:对一个点染色为1,对其全部有连线的邻接点染色为与其不用的颜色0,再对所有邻接点的邻接点染色为1,以此类推,当发现一个点i,其邻接点中有一个点的颜色与点i相同则非二分图#include<iostream>#include<cstring>#include<string>#include<cstdio>#include<...

2019-07-19 08:53:20 93

原创 Fire Net HDU - 1045 二分图

连续的一行给一个编号,连续的一列给一个编号,建图。#include<iostream>#include<cstring>#include<string>#include<cstdio>#include<vector>#include<queue>#include<cmath>#include<...

2019-07-18 15:35:30 76

原创 HDU2063-过山车 匈牙利算法

死在建立了双向边#include<iostream>#include<cstring>#include<string>#include<cstdio>#include<vector>#include<queue>#include<cmath>#include<stack>#includ...

2019-07-17 09:24:49 92

空空如也

空空如也

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

TA关注的人

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