- 博客(56)
- 收藏
- 关注
原创 算法设计与分析-线性规划
标准形:min z = c.transpose().dot(x)s.t. Ax <= b for all i, x_i >= 0单纯形法:一些概念:基,基本可行解(即只有在某组基的系数处的x是不为0的)推导:采用向量形式。加入松弛变量化成:min z = c.transpose().dot(x)s.t. A*x' == b for all i, x_i >= 0等式两边同乘B的逆(这里我傻了,实际上A不是方阵,是mxn的,B才是方阵,是含有逆的)np.dot(n
2020-06-08 16:27:20 820
原创 从注册服务器账号到成功运行python程序的流程
安装anaconda1.1 下载安装脚本:wget https://repo.anaconda.com/archive/Anaconda3-5.2.0-Linux-x86_64.sh1.2 运行安装向导:sh Anaconda3-5.2.0-Linux-x86_64.sh1.3 确认是否安装成功:conda --versionconda创建和激活虚拟环境2.1 创建虚拟环境conda create -n your_env_name python=your_python_version
2020-05-17 15:01:34 303
原创 常见WA错误总结(待更)
好久没刷题了……虽然最近也就写了几个题。又是疯狂WA。真的快疯了,手里积压的WA大概有几十个题了。以后有空慢慢debug。以下大部分都是程序设计实习课的时候犯的了,现在犯的少多了。但是抵挡不住太菜了疯狂WA啊……以后应该会更新这篇文章。警戒自己,造福后人(如果有人看到的话)以下为主体部分常见WA错误:1.算法使用错误。好像这个的错误慢慢变多了……经常想当然,没经过证明就开始用自己想的算...
2020-03-26 13:05:07 3360 2
原创 anaconda3命令以及遇到的坑总结
艹……今天折腾了一天。之前不懂版本控制的重要性,到后面发现每一个GitHub的数据库都有python啊pytorch的版本要求,开始困惑别人怎么管理这么多版本的python和pytorch……总不能每一次都重装吧?才想起去年此时刚学python的时候老师让我们装的anaconda。当时电脑里已经有python了,觉得pip安装挺方便的,就把anaconda删了。现在想扇死自己。anaconda了解...
2020-02-16 19:22:16 599
原创 关于二分查找
因为二分查找部分写挂而WA已经很多次了。while (l < r){ int mid = (l + r) / 2; if (condition) r = mid; else l = mid + 1;}cout << mid << endl;这样写会WA而int ans;while (l <= r){ int mid = (l + r)...
2020-02-10 15:05:04 135
原创 哈希表:正方形
摘一下题目:正方形总时间限制: 3500ms 内存限制: 65536kB描述给定直角坐标系中的若干整点,请寻找可以由这些点组成的正方形,并统计它们的个数。输入包括多组数据,每组数据的第一行是整点的个数n(1<=n<=1000),其后n行每行由两个整数组成,表示一个点的x、y坐标。输入保证一组数据中不会出现相同的点,且坐标的绝对值小于等于20000。输入以一组n=0的数据结尾...
2019-12-10 19:01:59 1956
原创 作死的记一次脑残的卖脑壳lab(日记向)
前几次lab都没记。datalab思维难度有点大(讲真好像它花的时间不少于malloc lab,不过满分了就是),也求助了小伙伴(当然是high-level的啦)。bomb lab应该是最简单的一个(还没做attack lab不知道),擦车lab并不是太难(虽然没满分……满分确实有点困难),arch lab同理。还有tshlab……并发和信号简直玄学。这样一回忆,对照起来malloclab并没有传...
2019-12-10 18:47:40 293
原创 在virtualbox下如何挂载共享文件夹
这问题已经搜了N遍了,每一遍重启就没了然后我又给忘了首先在virtualbox菜单那里找设备然后共享文件夹,设置共享文件夹,能勾的全勾上。然后输入命令:mount -t vboxsf [directory in your computer] [directory in your linux]就在写的时候我又忘记了一次 /微笑...
2019-10-21 15:37:44 231
原创 trie图:Computer Viruses in Planet Pandora
今天de了一天bug嗯,什么也没干,一大堆ddl等着我但是我还是义无反顾地扑向oj。trie图其实就是kmp算法的一个针对多子串的优化模式。本来是要每个子串找,但是把它整合成了一棵树,就省去了遍历子串的o(m)时间,而prev实际上是next数组的一个优化,trie树对应brute算法,trie图就对应kmp算法。在说这道题之前说一下那个躲不开的病毒,最后tle了,应该剪枝,把是否有效设置成全...
2019-10-20 21:22:49 161
原创 线段树:Difficult Lost Cows
这题居然一遍就AC了,当然我问了别人才得到的思路……线段树本质上是一个二分操作,把区间分成左右两个部分,用来存储这个区间的某些信息,比如部分和、最大值什么的。构造一棵二叉树。emmm,据说树状数组能做的题线段树也能做,早知道刚刚那个最长上升序列就不纠结那么久了(虽然我已经忘了怎么做了,把代码贴这吧)题目描述N (2 <= N <= 100,000) cows have uni...
2019-10-20 16:56:55 326
原创 并查集:A bug's life
一个多月前的题目了。数算实习的作业有三个题,食物链,冰阔落和这一道。冰阔落是模板题就不写了,食物链拼死拼活过不了。这个题参考了标程之后知道怎么回事了就写写。题目:描述BackgroundProfessor Hopper is researching the sexual behavior of a rare species of bugs. He assumes that they fe...
2019-10-20 14:01:15 253
原创 在调用函数中使用new和malloc等函数(或关键字)为指针分配空间
如果你直接把指针作为参数传递,那么在函数结束的时候这一部分空间会被回收(这时候把指针当成整数看待)。正确的办法是使用**,也就是指向指针的指针,*ptr = malloc(sizeof(node)),ptr是指向指针的指针。这样才能成功在函数返回的时候分配成功空间。这里把指针也理解成普通变量(都是对它们本身进行操作,而不是对指针指向的对象进行操作)就可以了。...
2019-10-18 12:07:40 565
原创 有关树状数组的数组编码
一个二维树状数组的问题。POJ1195 mobile phone我的二维数组是按照题给的一样0,0开始编码,其他的都相同(源代码如下),把题目中x,y=0的情况映射成x,y=-1的情况,直接返回0,结果永远TLE。然后我把它全部改成从1,1开始编码就AC了。不知道为什么。我自认毫无问题。`总之下次养成从1,1开始编码的好习惯吧(在碰到求和数组的问题上)#include <iostre...
2019-09-22 08:47:43 132
原创 latex报错合集
写个书面作业还要用LaTeX……哎……我太难了Missing \endgroup inserted in tabular (注意是tabular不是tabcular)把\multicolumn{2}{c c}{格式B}换成\multicolumn{2}{c}{格式B}Missing $ inserted不得不说LaTeX的tutorial真是坑……像\frac这样的特殊符号前后要...
2019-09-20 20:00:52 3033
原创 深度优先搜索:忍者道具
这题用动规想了巨久……结果看了郭神的答案发现是深搜。也是,题面太像一个背包问题了,而我一开始还用了贪心……也是智障天下第一。不过贪心肯定是不行的,但是动规我又想不出怎么做。描述忍者道具有很多种,苦无,飞镖,震爆弹。L君热衷于收集忍者道具,现在他有N个道具,每个道具的重量分别是C1、C2…CN。现在他想把这N个道具装到载重量为W的工具包里,请问他最少需要多少个工具包?输入第一行包含两个用空格...
2019-06-20 08:47:11 1151
原创 解题报告……?神奇的数列
发现最近一段时间发生了一些事情加上准备其他科的期末考试导致两个礼拜基本没有编程,算法能力直线下降……开始担心后天的考试了,大概率凉凉。好的,正文。描述一个正整数数列,可以将它切割成若干个数据段,每个数据段由值相同的相邻元素构成。该数列的神奇之处在于,每次切除一个数据段后,该数据段前后的元素自动连接在一起成为邻居。例如从数列“2 8 9 7 7 6 9 4”中切除数据段“7 7 ”后,余下的...
2019-06-19 16:44:14 1506
原创 还是广搜……wsl
有限制条件的广搜,判重的数组(或其他东西)一定,要,是K维的啊啊啊啊啊啊……也就是,这个状态由多少个参数决定,判重数组就要是多少维的。包括预处理的时候,待查找的数组也要是多少维的。这个好像之前有博客里写过……背思修大概背傻了。例题:What a ridiculous election?描述In country Light Tower, a presidential election is...
2019-06-14 13:39:13 240
原创 关于广搜
其实简单广搜的话本质上就是套路。但是要注意什么呢,就是判重的时候,跟动规是一样的道理,就是用k维数组表示k个参数的状态,你不能3个参数的状态用二维的数组来判重那就不行了。比如:百练4115:鸣人和佐助我一开始做了拯救行动那个题,是用郭神的方法做的,即再弄一个killed的布尔变量(实际上就是把直接t+2的步骤分成了两步),但是我只用了visited[maxn][maxn]数组也过了,于是自作聪...
2019-06-05 21:04:14 112
原创 我又来提醒自己了啊啊啊啊啊啊啊啊啊啊啊
这个错误不止一次犯了。刚又debug了一小时好的手动微笑。这题目是拯救行动,也就是鸣人和佐助的简单版本。我用的郭神的方法二死都过不了,死都找不出哪错了。OK最后发现是int legal(int x, int y) { if (x < 0 || x >= M || y < 0 || y >= N) return 0; if (visited[x][y]) retur...
2019-06-05 20:09:25 142
原创 深度优先搜索的几道题目
感觉还是比动规简单一些的……但是最近脑子有点糊。首先是要注意邻接表是有两种的,在稀疏图中,最好用vector存每个顶点的边的信息,而不是稠密图中的G[x][y]。第二是步数最少的路径……存path然后把path拷贝到bestpath……要不然会乱。我犯了很多次傻然后后面debug。这个错误很蠢但是我一开始也没想清楚。下面是一些具体问题。百练2815 城堡问题基本上可以算一个连通图的模板题...
2019-06-05 16:40:27 892
原创 一篇不怎么算解题报告的解题报告:动态规划:课程大作业
我是不是应该感谢这道题让我学会了对拍?对拍就是利用输入输出重定向弄到文件里面,具体代码就是这两行: freopen("hwin.txt", "r", stdin); freopen("hwoutstd.txt", "w", stdout);字典序真的天坑……不过那个错误真的弱智到爆炸……题目:描述小明是北京大学信息科学技术学院三年级本科生。他喜欢参加各式各样的校园社团。这个学期就要...
2019-05-26 00:32:50 572 1
原创 递归 谢尔宾斯基三角形
好吧,WA了总共接近两个小时,发现是数组开太小了,但是2的10次方不应该是1024吗???一开始傻逼没想到用数组存,直接打印想了巨久。naive。#include <iostream>#include <cmath>#include <cstring>using namespace std;char triangle[2048][2048];voi...
2019-05-19 08:02:15 1840
原创 关于cin(可能以后会修补)
纪念一下。如果要输出int或者double类型的变量,cin居然会自动在字符类型前面停住,颇有些scanf的风范。比如以下代码:#include <iostream>using namespace std;int main() { double x; cin >> x; cout << x; return 0;}输入12.0abcdefg,输...
2019-05-17 21:22:42 117
原创 关于static局部变量
以两段代码为例#include <iostream>using namespace std;class Number {public: int num; Number(int n): num(n) {} Number(Number & _this){ num = _this.num; //cout << _thi...
2019-05-17 13:42:13 387 1
原创 枚举 特殊密码锁
这题一直通过率100%,ssfd……而本渣还是因为智障而WA了……题目描述有一种特殊的二进制密码锁,由n个相连的按钮组成(n<30),按钮有凹/凸两种状态,用手按按钮会改变其状态。然而让人头疼的是,当你按一个按钮时,跟它相邻的两个按钮状态也会反转。当然,如果你按的是最左或者最右边的按钮,该按钮只会影响到跟它相邻的一个按钮。当前密码锁状态已知,需要解决的问题是,你至少需要按多少次按钮...
2019-05-11 13:42:32 213
原创 枚举 拨钟问题
终于程设学到算法了。人生第一篇解题报告~虽然这题比较简单。但是还是WA了许多次。题目:描述有9个时钟,排成一个3*3的矩阵。现在需要用最少的移动,将9个时钟的指针都拨到12点的位置。共允许有9种不同的移动。如下表所示,每个移动会将若干个时钟的指针沿顺时针方向拨动90度。移动 影响的时钟1 ABDE2 ABC3 BCEF4 ...
2019-05-11 13:36:30 398
原创 关于函数模板和函数指针的一道题
虽然我现在还没AC此题……2018程设期中考试的A07输入第一行是整数n,表示有n组数据每组数据有2行第一行是10个整数第二行是4个不带空格的字符串,它们之间用空格分隔输出先输出10个整数里面的第3个到第7个的平方和再输出10个整数里从第3个到第7个,按照字符串的方式,顺序连接的结果再输出4个字符串里,第1个到第4个串中,所有字符的ASCII码加和得到的整数再输出4个字符串...
2019-05-05 11:35:55 210
原创 写一个600行的小作业debug时候的一点感想,算是为大作业做点儿准备吧
首先,确认数组真的有下标了……虽然这很弱智但是真被它害惨了其次,最重要的一点,一个对象的size和指向这个对象的指针的size是不一样的!这个在vs2017当中被忽略了,然后在Dev中体现了出来,在qsort函数那里出了问题还有,在构造对象的时候,所有的指针,都,要,初,始,化!另外,对于多组数据输入,记得全局变量的重新!初!始!化!!!这个应该放第一条,写每个魔兽的时候都**出现了这个错误...
2019-05-05 10:42:29 189
原创 关于上次的魔兽3和这次的文件输入输出
最后两个bug,一个是武器排序,只排了totalweapon的数目,应该排10,也就是整个武器库大小,因为在排序函数中考虑了空指针的情形。另外,把delete删掉就能过的原因是,有多个指针指向了同一块内存分配的空间,即,new出来的空间后面又被赋给了其他指针,这样通过其他指针删掉new出来的空间就有问题。记住delete只能删掉自己new出来的空间,如果删掉了其他空间就会出问题。这次的读取bm...
2019-05-05 10:42:23 150
原创 关于山寨版istream_iterator的实现……
想了好几天。一直卡在那个构造函数的输入上,怎么判断输入x的类型从而实现读取或者不读取x。好吧,最后的投机写法(我猜这样应该是投机)是在每次++的时候再读取缓冲区中的数据。...
2019-05-05 10:42:13 1029
原创 热血格斗场和冷血格斗场
好的吧,过去很久的题目了,现在补一发。跟格斗场有仇。每个都提交了十几次。先摘一下题目。5:热血格斗场描述为了迎接08年的奥运会,让大家更加了解各种格斗运动,facer新开了一家热血格斗场。格斗场实行会员制,但是新来的会员不需要交入会费,而只要同一名老会员打一场表演赛,证明自己的实力。我们假设格斗的实力可以用一个正整数表示,成为实力值。另外,每个人都有一个唯一的id,也是一个正整数。为了...
2019-05-05 10:41:22 526
原创 关于bitset的实现
这算不算我的第一篇解题报告?虽然不是算法题。原题:程序填空,实现一个类似于STL中bitset的MyBitset,输出指定结果。#include <iostream>#include <cstring>using namespace std;template <int bitNum>struct MyBitset { char a[bitNum/...
2019-04-21 11:27:50 1548
原创 关于递归和回溯以及背后的编程习惯
尽量不要设全局变量,尽量不要设全局变量,尽量不要设全局变量。重要的事情说三遍。md debug了一个星期没发现问题在哪,最后还是求助外援才得以解决。...
2019-04-06 19:48:16 83
原创 关于STL的一些小事
首先……一般来说定义一个自己的STL的话采取继承的方式比较好……避免无数麻烦。然后是如果要自己写,那么如何把迭代器iterator和容器关联起来的问题:http://users.cs.northwestern.edu/~riesbeck/programming/c++/stl-iterator-define.html#TOC19见这个网站。因为这次作业不需要用到我就没看。然后非常重要的一点...
2019-04-06 19:20:38 82
原创 关于搭建神经网络
有这么几个坑:首先,loss函数真的超级重要!随神经网络层数的不同,loss函数也应该发生变化。比如我把莫烦python教程mnist的那个例子直接搬下来之后加了一层,正确率直线下降,找不到原因,到网上又找了个代码一点一点改,发现把loss函数改掉之后正确率也基本上跟没训练差不多了。比如loss后面用的是交叉熵,而莫烦python用得不是。第二个就是,分批次学真的很重要,我自己的神经网络基本上...
2019-04-05 16:22:12 99
原创 关于函数对象
以题目来说明吧。#include <iostream>#include <cmath>#include <algorithm>#include <string>using namespace std;template <class T1,class T2>struct Closer {};int Distance1(...
2019-03-28 10:33:20 120
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人