- 博客(41)
- 问答 (1)
- 收藏
- 关注
原创 ubuntu 下 vscode 调试 c++方法
刚下vscode的没几天,配置个c++让我爆炸了,首先是编译问题,试了很多方法,最后还是推荐一种最简单的方法,直接下载一个插件:C/C++ Compile Run,非常好用,直接F6就可以编译运行了,不需要配置launch.json和tasks.json,当然要配置也是没有问题的,tasks.json的配置{ // See https://go.microsoft.com/f...
2019-01-25 14:13:14 564 2
原创 Ubuntu系统突然所有命令都失效了,显示zsh: xxx:command not found
出现这个问题是因为系统的环境变量没有正确配置造成的,造成这个原因有很多,比如系统升级,比如不正当操作。解决的方式有两种。其一:直接在linux命令行界面输入如下,然后回车(导入环境变量,以及shell常见的命令的存放地址):export PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:...
2019-11-01 22:41:39 3915
转载 Python中__repr__和__str__区别
class Test(object): def __init__(self, value='hello, world!'): self.data = value>>> t = Test()>>> t<__main__.Test at 0x7fa91c307190>>>> print t<_...
2019-10-14 23:12:01 137
原创 Python中csrf攻击与防御
CSRF概念CSRF跨站点请求伪造(Cross—Site Request Forgery)。攻击者盗用了你的身份,以你的名义发送恶意请求,对服务器来说这个请求是完全合法的,但是却完成了攻击者所期望的一个操作,比如以你的名义发送邮件、发消息,盗取你的账号,添加系统管理员,甚至于购买商品、虚拟货币转账等。CSRF攻击原理以及过程用户C打开浏览器,访问受信任网站A,输入用户名和密码请求登...
2019-10-14 20:16:27 560
原创 pip 一次性安装和卸载多个package
pip一次性安装多个packagesudo vim requestments.txt写入需要安装的packagepip install -r requestments.txtpip一次性卸载多个package与上面一样pip uninstall -r requestments.txt可以将你安装的package直接写入pip freeze # 显示已...
2019-10-14 13:28:00 2483
原创 python与sudo python引起的程序无法找到模块问题
一开始碰到的时候一脸懵逼,后来仔细想了想发现了其中的问题,其实就是sudo python 和 python的区别了,提权后的python路径与普通执行的python路径是不一样的,也就是说,就算你pip install xxx,然后用sudo python xxx.py还是会出现问题.解决方法也很简单,就是在普通权限下查看路径和在root权限下查看路径,如我就用python3imp...
2019-09-08 11:02:35 2383
原创 gcc 编译出现exp, sin等math库函数缺失的错误
这种错误很常见,一般是makefile中最后忘记加上-lm了,加上后就可以链接math,但是我遇到一种情况是很老的代码,-lm不是放在最后,而是放在了中间导致了错误,值得注意....
2019-08-22 11:02:39 770
原创 对数据库范式的理解(第一,第二,第三和BCNF)
在理解这几个范式之前最好先理解下三种函数依赖,分别是:(1)平凡和非平凡依赖(2)部分与完全依赖(3)传递函数依赖平凡依赖简单说就是一个函数x在决定y的同时,y还是x的子集,而反之就是非平凡依赖。而完全依赖则是指x决定y,并且这个x已经是最小的了,不能在划分了,任何的划分都会导致不能在决定y。反之就是部分依赖传递函数依赖很好理解,就是x决定y,y决定z,则x间接决定z。...
2019-07-02 18:39:36 679
原创 python ->的作用
def foo(n: int)->int可以看出来,->是python中函数返回值的注解,而冒号后面的就是参数的注解了,十分好理解.在官方文档指明你写的注释将被保存在__annotations__这个方法中.但是这并不意味着和c/c++中一样会限制你的变量类型,它对你的程序没有任何的影响除了将你的注释保存在__annotations__中,这个只是个注释.怎么舒服怎么用...
2019-05-22 20:56:05 1036
原创 python从序列中去重且保持元素间顺序不变
如果序列中的值是可哈希的,那么可以直接用下面的方法:如果不知道是不是可哈希的可以这样判断: isinstance(对象,Hashable)def dedupe(items): seen = set() for item in items: if item not in seen: yield item see...
2019-05-16 17:14:38 291
转载 Python格式化字符串f-string
这个博客介绍的比较详细:https://blog.csdn.net/sunxb10/article/details/81036693
2019-04-01 20:36:19 194
原创 flask+nginx+uwsgi部署
最近写了个网站的demo想部署到买的阿里云上,真的艰辛啊,不知道为什么我会遇到那么多奇怪的问题。因此记录一下。首先是进入服务器,安装pip3,可以先update下apt-get。apt-get install python3-pip然后安装虚拟环境pip3install virtualenv创建虚拟环境并激活环境virtualenv venvsource ...
2019-03-29 18:13:08 203
原创 zsh: command not found: conda
安装完zsh之后你会发现很多命令都not found 了,这里是因为你的bash换成了zsh的,因此你需要在它的配置文件中即.zshrc中加入你想要用的命令的绝对地址的bin目录。那conda举例, 你就需要在.zshrc中加如:export PATH="/home/kerman/anaconda3/bin:$PATH"然后在重新编译下.zshrc文件。source ~/....
2019-03-18 20:46:46 2345
原创 单源最短路径
这里讲两个算法:dijkstra和spfa。floyd就不说了复杂的太高达到o(n3),不过多源用它还是很好的。先来spfa,这个算法可以说是很快了,但是是玄学算法没人能解释。o(ke),不过一般出题人都会卡它...这边用的是队列,首先用数组dis记录起点到每个结点的最短路径,用邻接表来存储图,用vis数组记录当前节点是否在队列中,用队列来保存待优化的结点,优化时每次取出队首结点,并且用队...
2019-03-10 13:34:47 131
原创 并查集
并查集的操作有三步,初始化,查找祖先与合并。并查集的初始化是让每个点的祖先指向自己。for(int i=1;i<=n;++i) f[i]=i;下面来写查找祖先的find函数。int find(int x){ if (x == f[x]) //如果是祖先就返回 return x; else //如果不是就递归进行查找 ...
2019-03-08 17:12:13 100
原创 cf Santa Claus and Robot
这道题只要记录一下方向的改变就可以了,改变一次加1,记得最后还要加1。#include <iostream>#include <algorithm>#include <string>#define maxn 10000using namespace std;int main(){ int n; cin >> n;...
2019-03-07 21:42:52 187
原创 cf Santa Claus and Keyboard Check
这是一道模拟水题,当时居然没有做出来www。用一个数组来记录哪些字母是对应的,然后如果出现已经出现的字母对应的字母不对应就输出-1,当时一直卡住,不知道哪里错了,后面发现是一个逻辑写错了,要先记录字母再判断是否要放入vector输出,一开始我是判断了是否相等然后再来做,一直卡在14组。因为先判断的话会让这个字符相等的没有做字符对应。#include <iostream>#inc...
2019-03-07 21:40:55 133
原创 最小生成树
最小生成树的两种最常见的算法Kruskal和prim。其他的我也不会啊!先来说简单的Kruskal算法,它本质上是一个贪心的策略,每次选权值最小的边,当然前提是边的两个顶点不在同一颗树里面。因此首先根据权值大小按从小到大的顺序排序,然后根据条件开始选择直到所有顶点都在一颗树内或者有n-1条边为止。这里还用并查集进行了优化。并查集不了解的可以看并查集Kruskal算法:#include...
2019-03-06 17:47:43 95
原创 vscode搭建TypeScript开发环境
首先更新软件源。sudo apt-get update然后安装nodejs和npmsudo apt-get install nodejssudo apt-get install npm更新下npm的包镜像源,这里淘宝的更快。sudo npm config set registry https://registry.npm.taobao.orgsudo n...
2019-03-04 21:09:28 455
原创 cf The Two Routes
这边很平常的最短路不同的是,它的铁路和公路要分开来算,另外注意这边它要求的是所有点都必须要有一条边,如果没有铁路的会有一条公路相连的。本来想用两次spfa来算的,然后比较取最大值就行了,后来想想只要一次就可以了。只要加个判断就好了,因为如果map[1][n]有直达的路只要算公路的就行了,如果没有直达的路的话算铁路的就行了,因为公路的肯定直达了。#include <iostream>...
2019-03-03 20:53:37 86
原创 cf Mike and Shortcuts
题目有点难读,理解后发现就是一道裸的最短路,随便用哪个最短路算法都能出来,我这里用的是spfa,然后根据题意来建图就ok了。#include <iostream>#include <algorithm>#include <string>#include <vector>#include <queue>#define max...
2019-03-03 20:44:40 149
原创 蓝桥杯 算法提高 P1003
这题很简单的模拟题,一开始怕超时,结果发现数据很水,不过这里有个坑,它要求的是按照第一行的顺序输出,真的是超级坑啊!!!我瞎了。。。#include <iostream>#include <algorithm>#include <string>#include <cstring>#include <vector>#d...
2019-03-02 20:06:40 353
原创 蓝桥杯 合根植物
一道简单的并查集求连通分量题目,没有什么可以说的,题目链接。#include <iostream>#include <algorithm>#include <string>#define maxn 100005using namespace std;int pre[maxn];int find(int x){ int r = x; ...
2019-02-28 21:52:32 232
原创 ubuntu 下 vscode 格式化 c++代码失效的解决方法
然后,格式化代码又遇到问题,发现直接ctrl+shitf+i会格式化失败报以下错误:error while loading shared libraries: libtinfo.so.5: cannot open shared object file: No such file or directory我也是尝试了各种方法,都没有什么用,后来whereis查找libtinfo.so.5,发...
2019-02-28 19:12:36 1671
原创 ubuntu sudo 免密的方法
编辑sudoers文件sudo vim /etc/sudoers在root 下面加一行,你想免密的用户名 ALL=(ALL) NOPASSWD: ALL。但是,发现还是不行,原因是下面的admin覆盖了上面的权限,因此你需要将admin也改为ALL=(ALL) NOPASSWD: ALL。这样大功告成!...
2019-02-28 16:39:55 994
原创 ubuntu 18.10 解决网易云音乐图标不能打开的问题
今天突然发现网易云点击图标无法启动,经过一番百度后才知道,网易云居然要sudo提权才能打开,真的是长知识了。如果你sudo免密没有设置的话就去设置一下,如果不会设置的话请看https://blog.csdn.net/qq_40433083/article/details/88034366然后直接vim /usr/share/applications/netease-cloud-music...
2019-02-28 16:34:07 261
原创 win10 + ubuntu18.10 安装的坑
前几天莫名其妙的出现了开机黑屏的bug,它提示的是EFI分区依赖失败,在尝试扫描磁盘修复无果的情况下,开始了重装之旅。一把辛酸泪啊。首先,如果你觉得win10空间还够用,那就不需要重装win10了,但是如果你觉得空间不够用想要重装win10的话,那么建议先装win10再装ubuntu。重装win的话,大致流程就是格式话一下,然后弄一个win的u盘,安装。下面就是ubuntu的安装了,大...
2019-02-27 10:56:09 408
原创 mysql修改表中的字段的编码格式
最近使用mysql发现明明在代码中已经指定了连接的编码格式为utf8,然而用脚本创建数据库的时候还是出现了编码错误.进入mysql查看发现,database的格式虽然变了,但是table的格式还是没变,一直没有找出问题在哪里,但是还是找到了解决方法.alter table `tablename` convert to character set utf8;使用这个语句,它可以修改一...
2019-02-17 19:47:27 1942
原创 cf 796 c Bank Hacking
题目大意是有n个结点,n-1条边,然后如果删除本结点,与本结点直接相连的结点权值加1其余间接相连的加2,然后让你求最少需要多少vlaue能把所有的边都删除。这题其实一道分类讨论的题目,假设所有的点的最大权值为maxa,有此最大权值的个数为mx,而maxa-1的个数有mc个,存在三种情况:1.答案为maxa, 当mx==1,且与maxa直接相连的结点个数==mc。2.答案为maxa+1,...
2018-12-10 10:47:22 202
原创 cf 769 D Police Stations
题目的大意是给你一颗n结点的树,然你删除尽可能多的结点仍能让题目给出的一些树中特殊标记过的结点满足任意点距离d内都有特殊结点。由于是树,而又要满足题意,所以k个点最多删除不能超过k-1条边,但题目中给的k是可能存在一个结点有相当于多个特殊点,所以是坑点,不能直接用它给的。不要想太多直接bfs搜就对了,如果当前边没走过但是到的点走过了,就可以删除,这样一遍就可以了,也不会存在什么问题。#i...
2018-12-10 10:29:32 154
原创 HDU 5750
题意大概是给一个n和d,问都多少小于n的数的最大因子d。一开始一直t,没有想到素数筛,其实只要先打表找出所有素数,然后直接暴力就行了。一个数d*x的最大因子为d,则x必为素数,否则可以再分即 x=x1*x2, x1*x2*d那就存在大于d的因子了,并且要满足x要小于d的最大素因子。#include<iostream>#include<string>#include...
2018-12-03 20:35:09 205
原创 HDU 1395
题意是求一个最小的正整数x, 令 2^x%n = 1。这里显然当n=1或者为偶数时是无解的,即输出-1。而当n为奇数时则可以根据欧拉函数来求解。即当为奇数的时候必有解。一开始还想各种操作,结果暴力可以直接过。。。#include<iostream>#include<string>#include<algorithm>using namespace ...
2018-12-03 20:16:29 170
原创 HDU 4704
题意大概是将N拆分成1-n个数,问有多少种组合方法。这个排列组合推一下是S(n) = 2^(n-1)。但由于n非常大,自然想到了快速幂,但发现还是不行,需要用结合费马小定理来解, 费马小定理的公式为: a^(p-1)%p = 1,前提互素这里满足。这样只要求(N-1)%(Mod - 1),然后用快速幂求解即可。#include<iostream>#include<st...
2018-12-03 20:07:46 209 1
原创 poj 1659
题目大意就是判断可不可图,另外输出。思路:havel算法,先排序,然后去掉最大的点比如值为x,并将后面的x个点全部减一,如果出现负数则说明不可图,如果全部变成0则证明可图。代码如下:#include<iostream>#include<string>#include<algorithm>#include<cstring>#def...
2018-11-11 19:22:03 281
原创 poj 2018
题目大意是在一个给定区间中,找出大与等于给定区间长度的连续的段,使其的平均值最大。这是问题转化一下就是求是否存在一段连续的子段减去一个数的和大于0,这里加了给附件条件,就是这个连续子段的长度要大于等于给定的长度,转化为这个问题后我们就用二分快速找到这个段就可以了,并用前缀和优化。#include<iostream>#include<string>#includ...
2018-11-11 18:48:09 171
原创 CF - 1073c Vasya and Robot
题目的大意大概是有一个机器人从(0,0)出发,根据给定的方向行走,然后给定一个坐标,让你改变最小的步数来使得机器人走到那里,如果无法到达输出-1.思路:先按原来的序列计算x,y的前缀和,然后二分,找出需要改变的最短区间长度,枚举所有的长度为m的区间,然后判断区间是否符合条件,若符合就进行二分,条件为改变区间的贡献值小于区间长度且剩余的个数为偶数个。代码如下:#include<i...
2018-11-11 18:36:55 164
原创 POJ 3264 Balanced Lineup
题目大意是:一个农夫有N头牛,每头牛的高度不同,让你找出指定区间最高牛和最低牛的高度差。解题思路:一看到题目就想到了线段树,然后用了递归的线段树,一开始一直TLE,本来想换成非递归版本,后来输入输出优化了一下就A了,这让我感受到了优化的妙处!!!#include<iostream>#include<string>#include<algorithm&...
2018-10-27 10:25:22 87
原创 做了个类似与学生管理系统的东西
经过一段时间的学习,又有了新的收获刚好有同学找到了我,让我帮他写一个类似与学生管理系统一样的东西,经验有限,所以,不足之处请多多指正,欢迎评论。下面就先贴上源码了。 #include<iostream>#include<string>#include<algorithm>#include<conio.h>#include<...
2018-04-15 08:03:59 746 1
原创 简易版推箱子
最近学了一些c语言的可视化编程,因此编了小游戏玩玩,途中也遇到了一些问题,要记得放图片的时候要把图片存在文件夹里,这些可以只写相对路径,不然如果直接写相对路径而又忘记把图片放在文件夹里就不能够显示出想要的结果。废话了这么多,是时候上代码了#include<graphics.h>#include<stdio.h>#include<conio.h>IMA...
2018-01-08 18:30:08 215
原创 萌新又试水了,这是第一个做好的程序
改了好多次才把这个程序做成功,当时成功的那一瞬间是很激动的。有了几点收获:1.一位大佬告诉我编程中是不需要printf一些没用的中文的 2.知道了scanf("")里面是不能随便空格的当时就被scanf("%d %d ")困扰了好久 3还有0<I<=j<=m.这种连等是...
2017-11-11 16:37:47 141
空空如也
萌新求教关于如何将这个程序改的用时更短
2017-11-18
TA创建的收藏夹 TA关注的收藏夹
TA关注的人