- 博客(344)
- 资源 (2)
- 收藏
- 关注
原创 PAT乙级 (Basic Level) python3语言实现代码(全120道)
PAT乙级 (Basic Level) Practice (中文)题目共120道。本文所有代码均用python3语言编写,除了11道题因为个别测试点超时未通过外,其他均通过。
2023-11-06 19:55:00
650
原创 对最小生成树和最短路径相关算法的简要总结
最小生成树和最短路径都是图论中比较基本的内容,我最开始在大学接触时感觉懵懵懂懂的,后来工作之后重新看算法相关的东西算是都会编代码了,但知道最近我重新把相关的内容深入学习了一遍才感觉把原理性的东西也弄明白了。当然,我所说的弄明白了只是最基本的内容。以下只说我理解之后的干货,至于每个算法的详细及通俗介绍,网上一搜一大片,我没必要在这里重复讲了。一、两类基本问题1.干什么用的最小生成树是在连通图...
2020-05-02 00:44:30
1146
原创 算法竞赛入门经典(第二版)-刘汝佳-第十章 数学概念与方法 习题(12/51)
文章目录说明习题习10-1习10-2习10-3习10-4习10-5习10-6习10-7习10-8习10-9习10-10习10-11习10-12习10-13习10-14习10-15习10-16习10-17习10-18习10-19习10-20习10-21习10-22习10-23习10-24习10-25习10-26习10-27习10-28习10-29习10-30习10-31习10-32习10-33习10...
2020-04-30 09:53:34
411
原创 算法竞赛入门经典(第二版)-刘汝佳-第十章 数学概念与方法 例题(16/29)
文章目录说明例题例10-1例10-2例10-3例10-4例10-5例10-6例10-7例10-8例10-9例10-10例10-11例10-12例10-13例10-14例10-15例10-16例10-17例10-18例10-19例10-20例10-21例10-22例10-23例10-24例10-25例10-26例10-27例10-28例10-29说明本文是我对第十章29道例题的练习总结,建议配合...
2020-04-30 00:54:27
344
原创 关于virtual judge网站无法登陆的问题
人家网站换了地址,不过内容都还在的。如果我文章中的链接打不开,就将链接中的http://acm.hust.edu.cn/vjudge替换为:http://vjudge.net即可
2019-07-02 17:36:06
12665
1
原创 发现vjudge用搜狗浏览器无法登陆
由于换工作等原因,已经一年没有更新算法代码了,在此对自己和关注我专栏的人都说声抱歉,我打算近期内重新开始更新算法竞赛入门相关代码及博客。 今天发现vjudge无法登陆,搜索原因后偶然发现可能是浏览器的问题。经过试验,结论如下:搜狗浏览器无论是兼容模式还是高速模式,都无法上vjudge.net网站;360安全浏览器和ie8可以正常打开该网站。如果有哪位兄弟找到了原因,辛苦留言告知一下。
2017-05-11 22:37:14
6048
9
原创 尝试在win7x64系统上查看tex格式的文档
事情的起源最近希望学习深度学习方面的资料,有人推荐了github上对经典深度学习英文教材的中文翻译(链接在此),下载下来发现是用git提交的版本维护格式,看来此项目一直处于更新状态。里面的文档是tex格式的,在windows里面不能直接阅读(估计在linux系统上是能直接阅读的),所以需要下载相关软件安装。尝试过程搜索window中如何打开tex格式的文档,找到了winedt软件,介绍说能够在win
2017-05-10 23:12:35
660
转载 KMP算法详解
kmp算法又称“看毛片”算法,是一个效率非常高的字符串匹配算法。不过由于其难以理解,所以在很长的一段时间内一直没有搞懂。虽然网上有很多资料,但是鲜见好的博客能简单明了地将其讲清楚。在此,综合网上比较好的几个博客(参见最后),尽自己的努力争取将kmp算法思想和实现讲清楚。kmp算法完成的任务是:给定两个字符串O和f,长度分别为n和m,判断f是否在O中出现,如果出现则返回出现的位置。常规方法是
2016-05-01 18:45:00
537
原创 算法竞赛入门经典(第二版)-刘汝佳-第九章 动态规划初步 习题(14/23)
说明本文是我对第9章23道习题的练习总结,建议配合紫书——《算法竞赛入门经典(第2版)》阅读本文。 另外为了方便做题,我在VOJ上开了一个contest,欢迎一起在上面做: 第九章习题contest(1) 第九章习题contest(2) 如果想直接看某道题,请点开目录后点开相应的题目!!!习题习9-1 UVA 10285 最长的滑雪路劲题意思路代码习9-2 UVA 10118 免费糖果题意思
2016-03-18 20:46:35
2699
2
原创 算法竞赛入门经典(第二版)-刘汝佳-第九章 动态规划初步 例题(11/31)
说明本文是我对第9章31道例题的练习总结,建议配合紫书——《算法竞赛入门经典(第2版)》阅读本文。 另外为了方便做题,我在VOJ上开了一个contest,欢迎一起在上面做:第九章例题contest 如果想直接看某道题,请点开目录后点开相应的题目!!!例题例9-1 UVA 1025 地铁里的间谍题意思路代码例9-2 UVA 437 巴比伦塔题意思路代码例9-3 UVA 1347 旅游题意思路代码例
2016-03-18 20:43:20
3755
原创 算法竞赛入门经典(第二版)-刘汝佳-第八章 高效算法设计 习题(18/28)
说明本文是我对第8章28道习题的练习总结,建议配合紫书——《算法竞赛入门经典(第2版)》阅读本文。 另外为了方便做题,我在VOJ上开了一个contest,欢迎一起在上面做:第八章习题contest 如果想直接看某道题,请点开目录后点开相应的题目!!!习题习8-1 UVA 1149 装箱题意 给定N(N≤10^5)个物品的重量Li,背包的容量M,同时要求每个背包最多装两个物品。求至少要多少个背包
2016-03-18 20:39:57
4082
原创 算法竞赛入门经典(第二版) 刘汝佳-第八章 高效算法设计 例题(14/19)
说明本文是我对第八章19道例题的练习总结,建议配合紫书——《算法竞赛入门经典(第2版)》阅读本文。 另外为了方便做题,我在VOJ上开了一个contest,欢迎一起在上面做:第八章例题contest 如果想直接看某道题,请点开目录后点开相应的题目!!!例题例8-1 UVA 120 煎饼题意思路代码例8-2 UVA 1605 联合国大楼题意思路代码例8-3 UVA 1152 和为 0 的 4 个值
2016-03-18 16:26:17
2783
原创 算法竞赛入门经典(第二版)-刘汝佳-第七章 暴力求解法 习题(11/18)
说明本文是我对第七章18道习题的练习总结,建议配合紫书——《算法竞赛入门经典(第2版)》阅读本文。 另外为了方便做题,我在VOJ上开了一个contest,欢迎一起在上面做:第七章习题contest 如果想直接看某道题,请点开目录后点开相应的题目!!!习题习7-1 UVA 208 消防车题意思路代码习7-2 UVA 225 黄金图形题意思路代码习7-3 UVA 211 多米诺效应题意思路代码
2016-03-16 13:23:20
2451
原创 算法竞赛入门经典(第二版)-刘汝佳-第七章 暴力求解法 例题(7/15)
说明本文是我对第七章15道例题的练习总结,建议配合紫书——《算法竞赛入门经典(第2版)》阅读本文。 另外为了方便做题,我在VOJ上开了一个contest,欢迎一起在上面做:第七章例题contest 如果想直接看某道题,请点开目录后点开相应的题目!!!例题例7-1 UVA 725 除法题意思路代码例7-2 UVA 11059 最大乘积题意思路代码例7-3 UVA 10976 分数拆分
2016-03-16 13:17:34
2959
转载 线性代数的本质
线性代数的本质2016-02-05 算法与数学之美 算法与数学之美转载自网络,原文地址不详线性代数课程,无论你从行列式入手还是直接从矩阵入手,从一开始就充斥着莫名其妙。 比如说,在全国一般工科院系教学中应用最广泛的同济线性代数教材(现在到了第四版),一上来就介绍逆序数这个古怪概念,然后用逆序数给出行列式的一个极不直观的定义,接着是一些简直犯傻的行列式性质和习题——把这行乘一个系数加到另一行上,再把
2016-03-15 19:49:10
864
3
原创 九度OJ 1551-1557(4/7)
1551#include <stdio.h>#include <stdlib.h>#include <math.h>#define PI (asin(1.0)*2)int main(void){ double R,r; while(scanf("%lf%lf",&R,&r)!=EOF) { if(r>1) r=1/r;
2016-03-08 23:07:34
865
原创 九度OJ 1541-1550(7/10)
1541(未完成)1542(未完成)1543#include <stdio.h>#include <limits.h>typedef unsigned long long ULL;int getb(ULL n, int i){ n >>= i; return n%2;}ULL setb(ULL n, int i, ULL k){ k <<= i; n |= k
2016-03-08 23:03:57
598
原创 九度OJ 1531-1540(7/10)
1531#include <stdio.h>#include <stdlib.h>#define N 100int cmp(const void *a, const void *b){ return *(int *)a - *(int *)b;}int main(void){ int n, i; int a[N], sum[N]; while (scanf("%
2016-03-08 23:00:29
689
原创 九度OJ 1521-1530(10/10)
1521#include <stdio.h>#define N 1000void printMirror(int a[N+1][3], int i){ if (i == 0) return ; if (i != 1) printf(" "); printf("%d", a[i][0]); printMirror(a, a[i][2])
2016-03-08 22:56:44
491
原创 九度OJ 1511-1520(10/10)
1511#include <stdio.h>#include <stdlib.h>struct node { int key; struct node *next;};struct node *insert(struct node *head, int key){ if (head == NULL) { head = (struct node *
2016-03-08 22:21:41
599
原创 九度OJ 1501-1510(10/10)
1501#include <stdio.h>#define LEN 100000int N;double data[LEN];double max[LEN];double min[LEN];double Max(double a, double b){ return (a > b) ? a : b;}double Min(double a, double b){ return
2016-03-08 22:17:14
543
原创 九度OJ 1491-1500(5/10)
1491(未完成)1492#include <stdio.h>#define M 100#define N 10int main(void){ int n, m, i, j, k, r; int a[M][M]; int sum, min; while (scanf("%d%d", &m, &n) != EOF) { for(i=0; i<m
2016-03-08 22:13:03
579
原创 九度OJ 1481-1490(7/10)
1481(未完成)1482//错误在于漏掉了初始状态的检查#include <stdio.h>#include <stdlib.h>#include <string.h>#include <limits.h>#define N 13#define M 1594323 // pow(3, 13)typedef struct node { int a[N]; int d;}
2016-03-08 22:04:15
638
原创 九度OJ 1471-1480(10/10)
1471#include <stdio.h>#include <string.h>#define N 100int main(void){ int n1, n2, i, j, k; char s1[N+1], s2[N+1], s[2*N+1]; while (scanf("%s%s", s1, s2) != EOF) { n1 = strlen(s
2016-03-08 21:59:00
758
原创 九度OJ 1461-1470(9/9)
1461#include <iostream>#include <cstdio>using namespace std;#define N 7 int n, m, t;char map[N][N+1];bool legal(int x, int y){ return 0 <= x && x < n && 0 <= y && y < m;}bool dfs(int x, int y,
2016-03-08 21:48:28
499
原创 九度OJ 1451-1460(10/10)
1451#include <stdio.h>int main(){ int i, j, n; long long f[21]; while(scanf("%d", &n) != EOF) { f[0] = 1; f[1] = 0; for (i=2; i<=n; i++) { f
2016-03-08 21:43:49
494
原创 九度OJ 1441-1450(9/10)
1441#include <stdio.h>#define N 1000int main(void){ int i; int a, b; while (scanf("%d%d", &a, &b) != EOF) { if (a==0 && b==0) break; a = a%1000; int r
2016-03-08 21:35:36
522
原创 九度OJ 1431-1440(10/10)
1431#include <stdio.h>#include <stdlib.h>#define N 1000000int cmp(const void *a, const void *b){ return *(int *)b - *(int *)a;}int main(){ int i, n, m; int a[N]; while(scanf("%d%d",
2016-03-08 21:29:39
932
原创 九度OJ 1417-1430(4/14)
1417代码#include <stdio.h>#include <string.h>#include <stdlib.h>#define N 100#define M 10000#define LEN 101typedef struct node { int x; int y; int d;} ROAD;int n;int pre[N+1];int count
2016-03-08 21:09:00
407
转载 各类排序算法的比较总结
排序算法是最基本最常用的算法,不同的排序算法在不同的场景或应用中会有不同的表现,我们需要对各种排序算法熟练才能将它们应用到实际当中,才能更好地发挥它们的优势。今天,来总结下各种排序算法。下面这个表格总结了各种排序算法的复杂度与稳定性: 各种排序算法复杂度比较.png冒泡排序冒泡排序可谓是最经典的排序算法了,它是基于比较的排序算法,时间复杂度为O(n^2),其优点是实现简单,n较小时性能较好。算
2016-03-08 20:51:48
755
转载 矩阵连乘问题的算法分析
问题描述:给定n个矩阵:A1,A2,...,An,其中Ai与Ai+1是可乘的,i=1,2...,n-1。确定计算矩阵连乘积的计算次序,使得依此次序计算矩阵连乘积需要的数乘次数最少。输入数据为矩阵个数和每个矩阵规模,输出结果为计算矩阵连乘积的计算次序和最少数乘次数。 问题解析:由于矩阵乘法满足结合律,故计算矩阵的连乘积可以有许多不同的计算次序。这种计算次序可以用加括号的方式来确定。
2016-03-07 16:56:04
17154
转载 矩阵相乘优化算法实现讲解
矩阵相乘什么是矩阵?在数学中,矩阵(Matrix)是指纵横排列的二维数据表格,最早来自于方程组的系数及常数所构成的方阵。这一概念由19世纪英国数学家凯利首先提出。矩阵是高等代数学中的常见工具,也常见于统计分析等应用数学学科中。并且在ACM竞赛,有很多涉及到矩阵知识的题。许多算法都会结合矩阵来处理,而比较具有代表性的矩阵算法有:矩阵快速幂、高斯消元等等。例如下面的图片
2016-03-07 15:54:35
1220
原创 九度OJ 1412(卡特兰数) 1413(未完成) 1414(未完成) 1415(循环队列) 1416(排序)
1412:毕业合影题意大魏要求学弟学妹们拍的时候站成两排,右边的比左边的要高,还要后面的比前面的那个人高一些。 请你帮他算算,如果有n个人来拍,按照大魏要求的方式排,会有多少种不同的方式呢。思路一开始没啥思路,后来看了别人的题解才发现是卡特兰数。。。 卡特兰数真的无处不在。代码#include <stdio.h>#define N 40int main(void){ int n, i;
2016-03-03 17:29:18
901
转载 机器学习路线图(附资料)
作者: 龙心尘 && 寒小阳 时间:2016年2月。 出处:http://blog.youkuaiyun.com/longxinchen_ml/article/details/50749614 http://blog.youkuaiyun.com/han_xiaoyang/article/details/50759472 声明:版权所有,转载请联系作者并注明出处1. 引言也许你和这个叫『机器学习』
2016-03-03 13:55:18
813
转载 从最大似然到EM算法浅解
机器学习十大算法之一:EM算法。能评得上十大之一,让人听起来觉得挺NB的。什么是NB啊,我们一般说某个人很NB,是因为他能解决一些别人解决不了的问题。神为什么是神,因为神能做很多人做不了的事。那么EM算法能解决什么问题呢?或者说EM算法是因为什么而来到这个世界上,还吸引了那么多世人的目光。 我希望自己能通俗地把它理解或者说明白,但是,EM这个问题感觉真的不太好用通俗的语言去说明
2016-03-03 10:18:13
501
原创 九度OJ 1407(线段树) 1408(DP) 1409(DP) 1410(DP) 1411(最短路)
1407:快速找出最小数题意给定一个大小为N 的整数数组array,我们定义两种操作: 1) Add(L, R, W)。即将子数组[L, R]中的元素,都累加一个整数W。 2) Min(L, R)。即返回子数组[L, R]之中,最小的一个元素的值。 其中L和R为数组的下标,且从0开始计数。当数组下标L > R时,我们认为这个子数组的元素包含array[L], array
2016-02-29 19:57:05
787
原创 九度OJ 1402(计数) 1403(模拟) 1404(未完成) 1405(未完成) 1406(最短路)
1402:特殊的数题意现在有n个数,其中有一些出现了一次,一些出现了两次,一些出现了很多次。现在要求你找出那些只出现一次的数,并按升序输出。思路由于每个数字的大小范围[1, 1000000],可以开一个这样大的数组统计每个数的出现此处即可。代码#include <stdio.h>#include <string.h>#define N 1000000int main(void){ int
2016-02-29 19:42:12
804
原创 九度OJ 1396(DP) 1397(尺取法) 1398(最值) 1399(背包,DP) 1401(未完成)
1396:最少零的路径题意一个由非负整数构成的N * N大小的矩阵,你需要按照如下的规则找到一条访问路径: 1、起点为该矩阵的最左上角元素 2、终点为该矩阵的最右下角元素 3、在遍历过程中,只允许从当前的单元移动到与之相邻的右侧单元或者下方单元最后,当我们按照如上三个规则获取路径之后,我们会将所访问到的单元中的数字相乘,同时希望得到的乘积末尾所含有的连续0的个数最
2016-02-28 22:59:58
872
原创 算法竞赛入门经典(第二版)-刘汝佳-第六章 数据结构基础 习题(12/14)
说明本文是我对第六章14道习题的练习总结,建议配合紫书——《算法竞赛入门经典(第2版)》阅读本文。 另外为了方便做题,我在VOJ上开了一个contest,欢迎一起在上面做:第六章习题contest 如果想直接看某道题,请点开目录后点开相应的题目!!!习题习6-1 UVA 673 平衡的括号思路 这么简单的题目竟然错了3次,羞愧一下!注意各种细节的可能性,尤其是循环结束后stack应该为空!
2016-02-26 10:11:33
2461
原创 算法竞赛入门经典(第二版)-刘汝佳-第六章 数据结构基础 例题(18/22)
说明本文是我对第六章22道例题的练习总结,建议配合紫书——《算法竞赛入门经典(第2版)》阅读本文。 另外为了方便做题,我在VOJ上开了一个contest,欢迎一起在上面做:第六章例题contest 如果想直接看某道题,请点开目录后点开相应的题目!!!例题例6-1 UVA 210 并行程序模拟 (p139, 双端队列)思路 暂时还没做。 代码例6-2 UVA 514 铁轨 (p140, 栈
2016-02-25 21:01:18
2934
Kerrighed集群操作系统分析
2011-12-15
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人