- 博客(48)
- 收藏
- 关注
转载 洛谷日报索引(2020、2019、2018)
历年洛谷日报索引2020 2019 2018感觉洛谷日报全是干货!!!先记下来再说2020 年洛谷日报索引3 月#260[dove]Church 编码(和 Lambda 演算)h...
2020-04-18 20:21:10
7299
1
原创 小球与盒子
问题1:给定N个各不相同的小球,和M个不同的BOX,有多少种不同的放球方法,使得每个BOX里的小球个数不小于K。N,M,K均小于15思路:dp,dp数组a[j]代表有j个小球被使用时的方案数。依次枚举每个盒子,对于每个盒子i,该盒子能放置的小球数位i*g至n-(m-i)*g,倒序枚举每次能放置的小球(倒序是为了使dp数组为一维),状态转移方程为a[j]+=a[j-k]*c(n-j+k,k)...
2020-04-18 18:01:57
508
原创 Machine Learning qsc1
lr模型处理某二分类问题,采用随机梯度下降import numpy as npimport matplotlib.pyplot as pltimport randomimport timedef split_data(onelinedata): onelinedata = onelinedata.split(",") x = list(map(float, onel...
2020-03-26 20:50:37
156
原创 数独
实在是太无聊了,下了个数独游戏玩这游戏居然还有排行榜,貌似这样每次就能rank1了?(逃#include<bits/stdc++.h>using namespace std;typedef long long ll;typedef long double db;const int n=9;const ll mod=998244353;const ll inf=0...
2020-03-26 20:42:13
169
原创 hdu6105 博弈+树
http://acm.hdu.edu.cn/showproblem.php?pid=6105若树可以通过剪边分为若干个两个节点相连的集合,且k大于等于剪边次数,则Bob赢。剩下的情况皆为Alice赢代码:#include<bits/stdc++.h>using namespace std;typedef long long ll;typedef double db;...
2019-11-01 20:17:35
160
原创 2019ccpc 秦皇岛站 A题 hdu6731
计算几何注意点:map存极角排序好的向量 使用count减少时间和内存消耗 分别处理直角点是查询点与直角点不是查询点这两种情况 离线搞#include<bits/stdc++.h>using namespace std;typedef long long ll;typedef double db;const int N=2005;const db eps=1e...
2019-10-14 16:52:17
388
原创 AtCoder Grand Contest 039 B
https://atcoder.jp/contests/agc039/tasks/agc039_b思路: 首先分析出不能满足题设条件的情况: 作一次bfs,若相邻结点的深度差不为1,则肯定不行,输出-1即可。 若满足题设条件,枚举每一个节点,对于每次枚举,都求出该情况下图的直径,输出所有情况中最大直径即可。#include<bits/stdc++.h>u...
2019-10-05 23:11:19
275
原创 牛客练习赛51 C 勾股定理
题意: 给出一个数n, 求出b和c, 使得n,b,c能构成直角三角形.n,b,c均为整数, 0≤n≤1e9,1≤b,c≤1e18思路: 没想到竟然用打表能找到一些规律.此题打表后就能发现如下规律:1.当n>2时总有方法可以构造2.当n是奇数总存在两条边b,c使得c-b=1并且n2^22+b2^22=c2^223.当n是偶数总存在两条边b,c使得c-b=2并且n2^22+b2^22=...
2019-09-08 22:20:37
206
原创 codeforces_1187_D
https://codeforces.com/contest/1187/problem/D题意:给一个数组a,一个数组b,每次可以选择数组a的一个区间并从小到大排序,问是否可以将数组a变成数组b。思路:https://blog.youkuaiyun.com/Frozensmile/article/details/94366486注意:调用empty()和pop()清空队列在多组数据时有可能会清不掉...
2019-07-04 20:24:56
390
原创 POJ1064 Cable master 二分答案 精度问题
https://vjudge.net/problem/POJ-1064题意:有n条绳子,他们的长度分别为Li。如果从他们中切割出k条长度相同的绳子,这k条绳子每条最初那个能有多长?答案保留到小数点后2位。思路:利用二分答案,将绳子的长度进行二分枚举。注意点:将小数后k位截断的方法是使用floor(ans*pow(10,k))/pow(10,k)#include<a...
2019-07-04 19:46:03
345
原创 codeforces_1108_E2
http://codeforces.com/contest/1108/problem/E2题意:给你一个长度为n的序列,m个区间,你可以选择若干的区间,对区间内所有数-1。然后设x为修改后的数组中最大元素-最小元素的大小,求最大的x。以及让你给出一个实现的方案,即需要选择几个区间,选择哪些区间。任意输出一种方案即可。题解:简要:枚举每个点,把包含这个点的所有边加上,把之前加了但...
2019-05-21 19:16:15
113
原创 codeforces_1131_F
http://codeforces.com/contest/1131/problem/F题意:有n只猫,每个都被单独分隔,给出n-1个关系,表示将x,y之间的隔板打开,要求每次只打开一个板。由于关系是按照顺序执行的,所以现在询问原来的n只猫可能的位置。题解:采用并查集、链表的思想。fa[i]代表并查集,同时也代表第i个小猫已确定区域的最左端(当然也可以另开一个数组), m[i]...
2019-05-21 19:15:20
104
原创 codeforces_1157_E Minimum Array
http://codeforces.com/contest/1157/problem/E(unfinished task:用权值线段树+二分 做一遍题意:给定两个数列a和b,根据这两个数列构造出新的数列c,其中ci=(ai+bi)%n,b数列中的元素顺序可任意调换,需要求出数列c的字典序最小思路:依次枚举数列a中的每一个元素,若在b中存在n-ai到n的数,则将满足条件的最小的那个元素从...
2019-04-28 00:09:54
218
原创 二分答案
https://www.cnblogs.com/fightfordream/p/6033165.htmlhttps://blog.youkuaiyun.com/int64ago/article/details/7425727
2019-04-10 23:54:54
142
原创 Comet OJ - Contest #0 D 战术安排 dfs
https://www.cometoj.com/contest/34/problem/D?problem_id=1476思路:为了预防超时(虽然感觉直接写dfs并不会超时),可以有以下两个剪枝:1.若已知当前情况肯定不会比之前得到的最优答案更优,剪枝2.可行性剪枝 0≤x,y,z≤180两个点需要注意:1.若第1题ab一起做60min,第二题bc一起做60min,第三题ac...
2019-04-06 14:18:19
291
原创 牛客练习赛43 B 套路
https://ac.nowcoder.com/acm/contest/548/B题目等价于求分数 abab 的小数点后 K1到 K2 位的所有数字。直接暴力模拟除法过程是肯定会 T 的,但是我们发现我们不用从头开始模拟,只需要从 K1K1 位开始模拟就可以了。直接通过快速幂+取模算出第 K1K1 位的数字。然后我们发现 K2−K1≤105K2−K1≤105,所以暴力枚举除法过程就可以...
2019-04-06 00:03:15
153
原创 hdu6034 模拟
题意:给一堆字符串,每个字符串相当于一个26进制数,每个字母替代0-25中的一个数字,问所有26进制数的和加起来最大是多少。思路:1. 这题居然卡常,用long long就会tle,int就不会2. 具体思路:对于每个字母都记录一下在第几位出现过多少次,相当于把每个字母表示成一个二十六进制数,最后根据每个字母的二十六进制数大小排个序.3. 注意进位4. 注意前导0,貌似之前没考...
2019-04-06 00:01:36
137
原创 hdu6033 简单数学
题意就是 ,输入m(m≤1e5),求k。直接用公式做就行。。#include<iostream>#include<cstring>#include<cstdio>#include<algorithm>#include<cmath>using namespace std;typedef long long ll;...
2019-04-05 23:55:59
218
原创 差分数组学习笔记
1.定义对于已知有n个元素的离线数列d,我们可以建立记录它每项与前一项差值的差分数组f:显然,f[1]=d[1]-0=d[1];对于整数i∈[2,n],我们让f[i]=d[i]-d[i-1]。2.应用区间加减操作:O(1)假如现在对数列中区间[L,R]上的数加上x,令f[L]+=x,f[R+1]-=x即可。询问每一项的值:O(n)求差分数组前缀和即可数组前缀和:O(n)...
2019-03-03 10:39:05
295
原创 洛谷P3369 普通平衡树
用权值线段树来做 要先离散化#include<cstdio>#include<iostream>#include<cctype>#include<algorithm>using namespace std;#define int long long#define ls (o<<1)#define rs (ls|1)i...
2018-10-20 17:40:07
196
原创 poj2104 主席树+离散化
题意:给出一段数列(1e6),让你求[L,R]区间内第k小的数是多少(询问次数5e3)思路:不带修改的主席树离散化是按照qsc的思路来写的:真实数据转换成离散化后的下标即为1,2,3...离散化后的下标要转换成原来的数下标要减1#include<iostream>#include<algorithm>#include<vector>u...
2018-09-16 22:43:50
335
原创 2018 icpc南京赛区网络赛 L题
https://nanti.jisuanke.com/t/31001分层图最短路 模板题 分层图最短路一般就是能够进行一定次数的操作让图中的某些边的边权变为0或者减半之类的,这些操作不是预先给出的是需要我们自己选择一些边。这种情况下我们用普通最短路是没有办法的,所以需要用到分层图思想。所谓分层图,就是状态是多维的一个巨大的图,正常的最短路我们是在一个二维的图中进行的,而用到分层...
2018-09-11 20:59:44
255
原创 2018 icpc徐州赛区网络赛 G题
https://nanti.jisuanke.com/t/31459比赛时一直在想用线段树和扫描线怎么做...然后后来才知道其实就是一道思维题啊...大致思路就是倒着访问所有波浪,分x和y坐标分别来做。因为不存在完全被覆盖的波浪,所以每一次波浪必定会使周长增加,然后多试几组数据就可以发现如果现在的值是最小的,则直接加上该长度,否则就加上它与比他小的最少的一个波浪的差值。因为我们既需要内...
2018-09-09 22:20:56
223
原创 2018 icpc徐州赛区网络赛 H题
https://nanti.jisuanke.com/t/31460这题用线段树和树状数组都能过大致思路就是维护两个线段树,一个是存每个元素(下标为i)的区间和,另一个存每个元素乘n-i+1的区间和。询问时只需用第二个线段树的区间和减去第一个线段树的区间和的(n-left)倍数就行了WA原因:int改成longlong一定要检查一下各函数返回值和scanf中是否也改成了longlo...
2018-09-09 21:10:20
379
原创 2018 icpc南京赛区网络赛 G题
segment treedfshttps://nanti.jisuanke.com/t/30996#include<bits/stdc++.h>using namespace std;#define lson l,m,rt<<1#define rson m+1,r,rt<<1|1const int inf = 1e9;const int ...
2018-09-01 21:12:56
247
原创 2018 icpc南京赛区网络赛 J题 附模板
题意求前1~n每个数的分解的非平方因子数乘积方式的和https://nanti.jisuanke.com/t/30999思路用修改的线性筛做a[i]表示数i的分解方法数,对每个数多试几组数据可以发现:1.质数的分解方法数始终为2;2.合数的分解方法数为其两因子数的分解方法数的乘积 若该合数为平方数,则分解方法数要除4 若该合数的其中一个因子是n次方数(n...
2018-09-01 20:40:46
599
原创 洛谷P1903 数颜色 分块
https://www.luogu.org/problemnew/show/P1903https://blog.youkuaiyun.com/shisuan1/article/details/81268270
2018-08-31 20:49:14
219
原创 洛谷P2801 教主的魔法 分块
https://www.luogu.org/problemnew/show/P2801题目Description教主最近学会了一种神奇的魔法,能够使人长高。于是他准备演示给XMYZ信息组每个英雄看。于是N个英雄们又一次聚集在了一起,这次他们排成了一列,被编号为1、2、……、N。每个人的身高一开始都是不超过1000的正整数。教主的魔法每次可以把闭区间[L, R](1≤L≤R≤N)内的英...
2018-08-30 22:06:24
148
原创 分块
模板int d[maxn]; //下标从1开始//num分块的个数//block表示每个块所含的数的数量//belong[i]表示下标为i的这个数属于哪一块//l[i]表示第i块的左端点的下标//r[i]表示右端点位置下标//下标都是从1开始void build(){ block=sqrt(n); num=n/block; if(n%block)num+...
2018-08-30 17:36:49
189
原创 hdu4302 优先队列/线段树/set
题意有一根长为L的管道和一个初始位置在最左端的动物,输入数据"0 x"表示此时在管道的左数x位置出现了一个食物,"1"表示动物想吃东西了:他会吃最近的食物,如果有多个最近的食物,就按照最近一次的移动方法移动,求所有命令结束后的动物移动路程。思路这个题目就是要迅速的找到比当前位置大的最小的那个数,和比当前位置小的最大的那个数(或者当前值本身),下面两个方法都是从这个思想入手的。思路1...
2018-08-27 17:47:56
163
原创 STL map
概述map映照容器是一种实现了平衡二叉树的数据结构,Map中每个元素都是一个键值对<key,value>,且key值是不能重复的,即每个元素的key值都是唯一的。Map容器可以按key检索map容器的定义:map<类型1,类型2>对象名;如:map<string,float> m;其中,类型1是key的类型,类型2是value的类型。 ...
2018-08-26 20:41:54
253
原创 STL set
概述:关联容器,元素无重复,数据被组织成一棵红黑树内部数据从小到大自动排序(也可从大到小)set可以在时间复杂度为O(logN)的情况下插入,删除和查找数据。set容器的定义:set<类型>对象名;如:set<int> s; set<类型,比较结构体>对象名;如:set<int,myComp> s; Set容器在插入...
2018-08-26 20:35:28
116
原创 hdu4393 优先队列数组
用优先队列暴力是肯定超时的,这里我们可以注意到因为s最大只有100,所以可以用优先队列数组,数组下标即使相同的si.#include<iostream>#include<algorithm>#include<queue>using namespace std;struct node{ int fi; int id; bool ope...
2018-08-24 15:56:33
941
原创 hdu4006 找第k个最大值 优先队列
题意不断地向数组里面加数,然后有多次询问,每次询问要求输出该数组中第k大的数数组长度和询问次数不超过1e6思路此题貌似有多种做法,用树状数组和线段树也能做.用优先队列来做的话,就是维护有k个数的最小堆,每次询问是将堆顶的数输出即可#include<iostream>#include<algorithm>#include<queue>...
2018-08-23 16:57:37
389
原创 UVA11136 双端队列or优先队列
https://vjudge.net/problem/UVA-111361.关闭同步2.使用long long!!!3.deque的sort必须用begin()和end()deque做法:#include<iostream>#include<algorithm>#include<deque>using namespace std;d...
2018-08-21 15:40:38
392
原创 hdu1495 非常可乐 bfs
一道比较老但是非常经典的bfs题,第一次做很难想到要用bfs吧。https://blog.youkuaiyun.com/BestFM/article/details/79617669 #include<iostream>#include<algorithm>#include<cstdio>#include<cstring>#include&...
2018-08-20 10:27:01
200
原创 hdu6400 矩阵问题
思路可以先暴力打表(dfs)找规律。很多与矩阵有关的题都是可以先打表来找规律的(dls最开始就是这么干的,虽然最后失败了qaq),记得之前牛客多校上的一道无限矩阵的题最后就是用dfs打表才找到了规律...此题主要分为3种情况(m,n为矩阵的h和w):1.m,n皆为奇,矩阵的goodness值永远为1,只需全部用(输出即可2.m,n为一奇一偶,矩阵的goodness为偶数边的值,稍微...
2018-08-17 08:47:35
275
原创 hdu6375 双端队列
2018 百度之星 初赛(A) 1002 度度熊学队列Problem Description度度熊正在学习双端队列,他对其翻转和合并产生了很大的兴趣。初始时有 N 个空的双端队列(编号为 1 到 N ),你要支持度度熊的 Q 次操作。①1 u w val 在编号为 u 的队列里加入一个权值为 val 的元素。(w=0 表示加在最前面,w=1 表示加在最后面)。②2 u w 询问编号为...
2018-08-11 17:23:23
787
原创 hdu6349 图论 最小生成树
2018百度之星资格赛 1006 三原色图最小生成树题,比较直观 #include<iostream>#include<algorithm>#include<cstring>#include<cstdio>using namespace std;int dis[110];//保存最短路径int pre[110];//并查集...
2018-08-05 21:24:28
246
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人