自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

shadandeajian的博客

长沙理工大学_CS专业_大二在校学生

原创 Proxyee-down 3.x的下载与安装

本篇博客将持续更新Proxyee_down 2.x的下载与安装在:https://blog.csdn.net/shadandeajian/article/details/80349939因为

2018-10-10 19:30:07 94671 29

原创 yolo3 + Windows + VS2017 + CUDA9.2 教程

图像识别算法yolov3,因实验需要在Windows中搭建环境,GitHub中作者建议使用vs2015,网上大多数教程也使用的是vs2015甚至更早版本。如今大多数人都使用的是vs2017。因为搭建过程比较繁琐,库比较多,故在此尽可能详细记录下搭建的全过程。给广大人工智能开发者提供便利。搭建日期:2018年7月4日前期准备:资源:https://pan.baidu.com/s/...

2018-07-04 17:34:30 10251 19

原创 Proxyee-down的下载与安装教程

Proxyee-down是monkeyWie在Github上的一个开源项目,向作者致敬。最新版的Proxyee-down为3.12(2018.10更新),因为作者在3.x后的版本中并未发布exe版本,只发布了jar包所以我们需要在计算机中安装Java环境才能使用Proxyee-down考虑到安装成本的增加,和新版有时会无法下载所以本博客只介绍2.x的最后一个版本的也就是2.54的下...

2018-05-17 14:21:28 436254 92

原创 POJ 3321 DFS序 + 树状数组 查询子树

题目:传送门题意:给一个树,查询结点下的子树的苹果总数,并且要求支持增减苹果题解:查询子树,我们首先想到的是DFS序,还要支持修改操作,我们可以用树状数组维护这个DFS序,因为还要查询,所以我在实际程序中使用了欧拉序。AC代码:#include <iostream>#include <vector>#include <cstdio>#defin...

2018-10-10 17:51:34 505

原创 POJ 2342 树形dp

题目:传送门题意:给一棵树,每个结点都有一个权值,父节点和子节点不能同时出现,求权值和最大值是多少。题解:我们要在树上跑个dp,因为问题的模型只有用和不用,所以我们在树上跑01背包那个模型就行了AC代码:#include<iostream>#include<cstring>#include<vector>using namespace std;...

2018-10-10 12:01:35 477

原创 dsu on tree 启发式合并算法

翻译自:http://codeforces.com/blog/entry/44351我们先引入这样一个问题:有一棵树,树上有很多结点,每个结点有一个颜色c,我们现在想知道树上每个结点的子树**(subtree)**,有多少个结点出现颜色c。子树的定义:该结点和其所有的孩子构成的树。如上图:结点1子树:3个结点出现黄色,2个结点出现红色结点2子树:2个结点出现黄色,1个结点出现红色结...

2018-10-10 11:57:04 646 1

原创 Codeforces 600E dsu on tree 启发式合并

题目:传送门题意:给一颗树,计算所有结点的子树,颜色最多的结点的 颜色种类的sum和,子树的定义是当前结点和其所有的子节点。题解:我们可以想到一种暴力的解法,就是O(n)遍历所有的结点,然后dfs搜索它的所有子节点,查看颜色出现最多的结点,用一个ans数组维护答案,最后输出ans。显然,这样做的复杂度为O(n^2^)我们这里用到dsu on tree算法,关于这个算法的详解,可以参考:...

2018-10-09 21:44:51 410

原创 LIS 最长上升子序列

O(n2)写法O(n^2)写法O(n2)写法#include <iostream>#include <cstring>#include <cstdio>#include <algorithm>#define debug(x) cout<<#x<<" = "<<x<&amp

2018-10-08 20:46:37 328

原创 VIM个人总结

纯粹是自己记忆太差,下面是目录:基础指令:指针跳转删除基础指令:指针跳转返回文件顶部:gg删除删除当前行:dd删除以下的n行:ndd

2018-10-02 21:41:07 384

原创 GCC for linux 编译程序

先用vim写好后,用g++编译g++ -o test test.cpp -std=c++11./test

2018-10-02 21:36:42 395

转载 纯粹给自己备忘

这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入欢迎使用Ma...

2018-10-02 16:05:25 325

原创 C语言 生日歌代码

#include<windows.h>#include<stdio.h>unsigned int rhythm[] = {0x188, 0x188, 0x1B8, 0x188, 0x20B, 0x1EE,0x188, 0x188, 0x1B8, 0x188, 0x24B, 0x20B,0x188, 0x188, 0x310, 0x293, 0x20B, 0x1EE...

2018-10-02 15:44:51 11393 18

原创 DOSBOX for linux 的下载与安装 并调节窗口大小

DOSBOX for linux 下载和安装sudo apt-get install dosbox我的是ubuntu,yum源并未测试调节窗口大小因为现在显示器分辨率太高,dosbox的默认分辨率是1024*720,看起来很不舒服。网上有人说改配置文件,很麻烦,而且我尝试后还是修改不了,后来发现一个简单方法。按住ALT+ENTER,进入全屏模式,看的就很清楚啦,如果想退出全屏,再按一次...

2018-10-01 18:20:22 1064 1

原创 数论各种定理 个人总结

数论-目录同余定理:定理基础:定义应用:同余定理:定理基础:公式:a≡b(modm)a≡b(mod m)a≡b(modm)含义:两个整数a和b满足a-b能够被m整除,即(a-b)/m得到一个整数,那么a与b分别用m去除,余数相同。定义应用:(a+b)%m=(a%m+b%m)%m(a + b) \% m = (a \% m + b \% m) \% m(a+b)%m=(a%m+b%m)...

2018-09-27 20:13:22 446

原创 BUNOJ 1093 && HDU 2973威尔逊定理

传送门:BUNOJ传送门:HDU题意:给一个数学关系式,关系式中有一个未知数n,每次输入n的值,要求输出表达式的值。题解:表达式中有一个sigma,而T的范围为1e6,n的范围为1e6,显然,如果直接暴力的时间复杂度为O(1e^12^),肯定会超时。这里用到一个基本数论:威尔逊定理:(p−1)!≡−1(modp)( p -1 )! ≡ -1 ( mod p )(p−1)!≡−1(mo...

2018-09-26 21:21:36 361

原创 WinEdt 系统找不到指定的文件 解决办法

刚刚安装好的Ctex,编译失败,显示系统找不到指定文件。打开开始菜单,找到Ctex目录下的setting(admin),如下图所示(红圈那个): 然后会出现一个提示框,点击OK就好了。这样我们就进入了MikeTex的setting界面: 我们点击Refresh FNDB。等待完成好,关闭setting界面,重启WinEdt就好啦...

2018-09-16 22:35:37 9980 9

原创 CCF 201803-3 大模拟

题意:给定两组字符串,匹配,大模拟就好了AC代码:#include <iostream>#include <cstring>using namespace std;bool solve(string str1, string str2, bool flag) { int index1 = 0, index2 = 0, len1 = str1....

2018-09-11 22:17:09 363

原创 CCF 201712-2 模拟

题意:围成一个约瑟夫环,不过出圈规则还有尾数为k的人,我们只需要用一个vector模拟就好了。AC代码:#include <bits/stdc++.h>#define debug(x) cout<<#x<<" = "<<x<<endl;#define INF 0x3f3f3f3fusing namespace std...

2018-09-11 21:06:38 366

原创 括号匹配 思维

来源:长沙理工大学2018区域赛个人选拔赛1题目:描述: 给你一个只由‘(’ 和‘)’组成的字符串,现在你可以翻转一个子区间(必须翻转一个子区间)来使得最后匹配的括号数个数最大。 匹配规则:一个左边的‘(’和一个右边的‘)’可以组成一个匹配 翻转的规则:“((()”翻转区间后变成“()))”。即翻转后左括号变成右括号,右括号变成左括号。 例如:(((( 翻转最后2个括号变成(())...

2018-09-08 22:47:36 498

原创 爱摸鱼的zhrt 01背包

来源:长沙理工大学2018区域赛个人选拔赛1题目:描述: 爱摸鱼的LMJ最近喜欢上了B站的鬼畜视频,为了拉人一起摸鱼,他还喊上了zhrt一起看。 现在zhrt关注了一个UP主,这个UP主投稿了N个视频,每个视频都有一个点击量ViViV_i​,zhrt喜欢看点击量高的视频,可是爱学习的zhrt每天又规定了刷题时间, 于是每天只能看T秒视频(没错,要按秒计算~),设第i个视频的时长为​t...

2018-09-08 21:59:51 282

原创 题目序号配给 字典序最小的拓扑排序

来源:长沙理工大学2018区域赛个人选拔赛1题目:描述: 在一种竞赛中,题目往往是成套出现的。一道基础题,稍加改动就会使难度上升几个档次。 现在有n道题目,编号为1~n;给出了m个二元组,每个二元组<a,b><a,b>表示 b题目是a题目的加强版,每个题目可能会有多个加强版,加强版的题目也可能会有加强版。 现在要将这n道题目放组成一场比赛,出于人文关怀方面...

2018-09-08 21:36:01 539

原创 POJ 3249 拓扑排序 DP

传送门:题目题意:给一个图,求两点权值累加和的最大值,点的权值可能为负数。题解:我们可以先拓扑排序一下,然后从起点到终点dp一下,记录每个点的答案,然后求答案的最大值AC代码:#include<iostream>#include<cstring>#include<cstdio>#define debug(x) cout&lt...

2018-09-08 20:20:29 254

原创 51NOD 1476 贪心

传送门:题目题意:给一个字符串,问号可替换左右括号,问在保证括号合法匹配的前提下,替换的权值和最小。题解:不妨先把所有的问号替换为右括号,我们用sumsumsum计算他们的权值和,那么替换的过程中sum+=b[i]sum+=b[i]sum+=b[i],然后我们再一次从左往右扫一遍,扫到问号的时候用优先队列储存b[i]−a[i]b[i]−a[i]b[i]-a[i],用cntcntcn...

2018-09-05 22:44:53 107

原创 HDU 6349 最小生成树

传送门:题目题意:给定一个图,边是无向边,然后每条边有一个权值和一种颜色,求用特定两种颜色的边组成强连通图,然后问讯k∈[1,m]k∈[1,m]k \in [1,m]边的加权和的最小值。题解:题目很好理解,我们只需要分别建两个图,然后分别找两个最小生成树就行了,然后把不是属于最小生成树的边从小到大排个序,最后遍历一下,加到最小生成树的权值和上面去。第一开始套个模板就写完了,但是一直...

2018-09-05 19:06:58 137

原创 Codeforces 100518I 贪心

传送门:题目题意:先给n对数据,每对代表一门考试,每对的第一个数字代表考试的日子,第二个数字代表需要复习的天数。然后再给m对数字,代表区间[l,r]内既不能复习,也不能参加考试。问学生最多能获得几门学科的学分。题解:很明显的贪心题目,千万不要以复习天数的多少贪心,因为这样会忽略掉考试的时间和非法区间的存在。我的想法是把每门课程看作一个区间,然后把这个区间和非法区间一起合并进一个ve...

2018-09-03 19:21:33 66

原创 Codeforces 100518B DP

传送门:题目题意:题意很难懂,而且问了四个问题。 先说一下背景,根据Braess的悖论,人们在去往某一条道路时总会选择耗费时间最少的道路(人们是很机智的),现在有n+1个城市,两边的城市是起点和终点,有且只有两条道路,每一条道路的的每一段都有一个权值,k代表压力指数,如果人们都选择这条道路,而不选择另一条道路,那么这条道路的压力指数k为1,否则为0,除了两边的起点和终点,中间的n-1座城...

2018-08-30 20:46:48 74

原创 Codeforces 770C 拓扑排序 DFS

传送门:题目题意:一个人要完成几门课程,但是有的课程有基础课程,要完成基础课程才行,问完成所有课程需要至少完成几门课程,并按照时间先后输出。题解:题目一看就是拓扑排序,随便一搞就行了。AC代码:#include <iostream>#include <cstring>#include <cstdio>#include <a...

2018-08-29 00:26:25 202

原创 Codeforces 769C BFS 贪心

传送门:题目题意:一个人在迷宫里,点为可走,星为不可走,要求这个人走k步,恰好回到初始位置,并且保证路径的字典序最小。题解:如果没有字典序最小这个限制条件,我们大可以不必BFS,直接找到一个可行方块,来回来回走即可,但是题目要求字典序最小,所以我们只能先尝试字典序最小的D,也就是往下走,如果不行,在往L走,然后是RU。这里BFS一遍就好。但是怎么保证它能恰好回到起始点呢?我...

2018-08-28 21:06:26 124

原创 Codeforces 768A 暴力

123

2018-08-28 14:59:48 98

原创 Codeforces 768B 暴力 DFS

传送门:题目题意:给一个根节点n,每次往下分3个结点,左中右分别是n/2,n%2,n/2n/2,n%2,n/2n/2,n\%2,n/2,分到1或0的时候停止下分,然后区间求和。题解:我们按照题目要求dfs一遍就好了,就是一棵树,遇到0或1的时候return。AC代码:#include <iostream>#include <algorithm&g...

2018-08-28 14:37:01 86

原创 Codeforces 769B 暴力

传送门:题目题意:一开始,只要第一个学生知道消息,第一个学生想把消息传给所有人,只能点对点传输,而且每个人只能发送有限条消息,求方案,如果没法达成,输出-1题解:如果第一个学生可传达消息数不为0,且传达总数≥n−1≥n−1\geq n-1,那么就一定可以完成任务。 暴力的时候,我们可以先sort一遍,然后按照从大到小依次传递。AC代码:#include <i...

2018-08-28 14:31:30 77

原创 C++ 关于and or保留字

今天看别人代码,C++用了and,尼玛,那不是python或java等高级语言才有的关键字吗,什么时候C++也有了,遂查阅博客,有人说这是C++11的新特性,有人说C++第一开始就有了,遂自己动手。结论:不用开-std=c++11也能编译成功,所以这不是C++11的新特性实验程序:#include <iostream>using namespace std;...

2018-08-27 21:27:15 4545 1

原创 Codeforces 770B 思维

传送门:题目题意:给一个数n,求≤≤\leqn的,所有数位相加最大的,如果多个数都是可行解,取值最大的作为最优解输出。题解:这题我第一开始WA了,看CF代码,发现少枚举了一种情况,最大值无非就是三种情况:首位不变,后面的都变成9首位减一,后面的都变成9首位不变,后面的其中一位是8,其余位都是9AC代码:#include <iostream>#i...

2018-08-27 20:56:53 77

原创 BZOJ 3211 线段树 区间更新 区间求和

传送门:题目题意:给一个序列,有两种操作:给区间[l,r],区间的每个值都开根号查询区间[l,r]的sum和题解:纯的线段树,区间更新,区间求和,套个模板就好。然后有个技巧,10910910^9开5次方就是1了,所以我们在建树的时候,发现值≤≤\leq1的时候,标记一下,然后以后更新的时候,遇到1直接跳过就好了。坑点:不能用cin,cout,要不会超时。A...

2018-08-26 21:25:42 261

原创 常用组合数计算公式

Cmn=Cm−1n−1+Cmn−1Cnm=Cn−1m−1+Cn−1mC_n^m=C_{n-1}^{m-1}+C_{n-1}^{m}m∗Cmn=n∗Cm−1n−1m∗Cnm=n∗Cn−1m−1m*C_{n}^{m}=n*C_{n-1}^{m-1}C0n+C1n+C2n+⋯+Cnn=2nCn0+Cn1+Cn2+⋯+Cnn=2nC_{n}^{0}+C_{n}^{1}+C_{n}^{2}+\dots...

2018-08-26 20:31:23 30150 2

原创 Codeforces 800B 计算几何

传送门:题目题意:给n个点,按照输入的顺序,顺时针连接每个点,可以组成一个凸的多边形,我们可以移动任意一个点,在以该点为圆心,半径不超过d的范围内,假设,移动后的多边形,保证任意两条边不是相交的,以及它依然是一个凸形,d最大为多少?题解:明显是一道计算几何的题,我们只需要考虑如何满足上面两个条件即可:保证任意两条边不相交,相邻点的距离小于2∗d2∗d2*d即可我们知道,未改...

2018-08-26 10:24:36 116

原创 POJ 2481 树状数组

传送门:题目AC代码:#include <iostream>#include <cstring>#include <cstdio>#include <algorithm>#define debug(x) cout<<#x<<&a

2018-08-25 17:51:55 94

原创 HDU 5316 线段树 单点更新 区间最值

传送门:题目题意:给一个序列,有n位,下标索引为[1,n],有两种操作:更改某一位的值查询区间[l,r]中子序列中所有元素累加和的最大值,这里子序列的定义为:子序列中的下标映射到原序列中,下标可以不相邻,只要满足奇偶交替即可,比如:原序列是”1,2,3,4,5,6,7,8,9”,那么子序列可以为"1,4,5,6,7,8,9"或者"4,1,5,6,7,8,9&a

2018-08-25 15:56:03 88

原创 HDU 4521 LIS变形 简单dp 线段树 单点更新 区间最值

传送门:题目题意:给一个由n个数组成的序列,然后从左到右取一些数组成一个新序列,这个新序列满足一些条件:新序列是递增的原序列取得过程中,相邻两个元素的位置间隔至少为d原序列的个数尽可能多题解:第一个条件明显是LIS,第二个题目告诉我们这道题是LIS的变形,说是变形,其实就改了一点,我们在求普通LIS的时候,dp[i]=dp[i-1]+1,这道题:dp[i]=dp[i-d...

2018-08-25 12:57:41 75

翻译 ios basic_ios和ios_base 的区别

来源:原文翻译自:StackOverflow原文地址前言:关于ios,作为C++的程序员肯定不陌生,最基础的,我们在设置小数位精度的时候,要用ios::fixed。作为ACM选手,最常用的ios::sync_with_stdio(false) 笔者今天在codeforces上看别人代码时,看到别人用了ios_base::sync_with_stdio(false),遂翻阅资料,在St...

2018-08-24 13:36:41 1790 3

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