算法
杨瘦锅
这个作者很懒,什么都没留下…
展开
-
cout 和 printf 性能比较
今天刷OJ时,有个全排列的题目一直超时,当时是用的cout,然后换成printf果断 ac,因此,拥有执著的求知精神的我试试到底差别有多大。测试用例是用printf 和 cout 分别输出从0~1000,代码如下#include#include#includeusing namespace std;int main(){ SYSTEMTIME sys;原创 2016-04-17 11:16:14 · 8454 阅读 · 7 评论 -
九度OJ 1005 Graduate Admission
题目链接: 点击打开链接题目描述: It is said that in 2011, there are about 100 graduate schools ready to proceed over 40,000 applications in Zhejiang Province. It would help a lot if you could write a pr原创 2016-10-12 19:46:17 · 296 阅读 · 0 评论 -
题目1001:A+B for Matrices
题目描述: This time, you are supposed to find A+B where A and B are two matrices, and then count the number of zero rows and columns.输入: The input consists of several test cases, each原创 2016-10-05 15:48:01 · 208 阅读 · 0 评论 -
题目1002:Grading
题目描述: Grading hundreds of thousands of Graduate Entrance Exams is a hard work. It is even harder to design a process to make the results as fair as possible. One way is to assign each exam prob原创 2016-10-06 09:49:02 · 343 阅读 · 0 评论 -
题目1003:A+B
给定两个整数A和B,其表示形式是:从个位开始,每三位数用逗号","隔开。现在请计算A+B的结果,并以正常形式输出。输入:输入包含多组数据数据,每组数据占一行,由两个整数A和B组成(-10^9 输出:请计算A+B的结果,并以正常形式输出,每组数据占一行。样例输入:-234,567,890 123,456,7891,234原创 2016-10-06 10:03:19 · 669 阅读 · 0 评论 -
最短编辑距离问题 : Levenshtein Distance
个人觉得只要你能明白edit数组的含义就可以理解状态转移方程了。/*可以用来表示字符串的相似度?*/#include using namespace std;int edit[100][100] ;//edit(i,j)表示从 A的前i个字符 转化成 B的前j个字符所需的操作次数int str_equal(char &a,char &b){ //判断两个字符是否相等,相等返回0,否则返原创 2016-10-29 21:02:34 · 712 阅读 · 0 评论 -
九度OJ 题目1011:最大连续子序列
题目描述: 给定K个整数的序列{ N1, N2, ..., NK },其任意连续子序列可表示为{ Ni, Ni+1, ..., Nj },其中 1 输入: 测试输入包含若干测试用例,每个测试用例占2行,第1行给出正整数K( K输出: 对每个测试用例,在1行里输出最大和、最大连续子序列的第一个和最后一个元素,中间用空格分隔。如果最大连续子原创 2016-10-20 20:37:10 · 354 阅读 · 0 评论 -
初识Matlab遗传算法工具箱 ga
顺便安利一个算法实现的代码:https://github.com/yanshengjia/artificial-intelligence/tree/master/genetic-algorithm-for-functional-maximum-problem作者原著:https://www.zhihu.com/question/23293449/answer/120220974原创 2016-11-25 11:33:27 · 1949 阅读 · 0 评论 -
了解 sdhash
SDHASH1. sdhash : similarity digests hash (相似性摘要散列)automate content triage . 用于自动内容分类此处的摘要(digest)指的是:Metadata--元数据:元数据指的是计算机用来标识文件的一些附加信息,例如文件名,文件类型,文件时间戳,文件在物理存储介质的数据分布等。官网关于sdhash的介绍(原创 2016-12-08 11:54:47 · 1199 阅读 · 0 评论 -
Labyrinth
LabyrinthTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 152 Accepted Submission(s): 76Problem Description度度熊是一只喜欢探险的熊,一次偶然原创 2016-12-15 18:41:13 · 328 阅读 · 0 评论 -
简单理解线性规划的单纯形算法
自己写的,csdn的markdown不怎么会用,所以在知乎写的。文章-理解线性规划的单纯形算法原创 2017-12-03 12:14:11 · 1925 阅读 · 0 评论 -
九度OJ : 1004 Median
这题只有一个测试用例,只要过了我给的这个,应该就没问题1 15 5 6 7 8 9代码逻辑有点乱。。。code:#include using namespace std;#define MAX 1000001long int a[MAX] , b[MAX];int main (){ int m,n ; while (cin>>n){原创 2016-10-11 20:29:50 · 266 阅读 · 0 评论 -
九度 OJ 1451 错排 动规
题目链接:http://ac.jobdu.com/problem.php?pid=1451题目思路:(参考wiki百科)递推数列法[编辑]对于排列数较多的情况,难以采用枚举法。这时可以用递归思想推导错排数的遞迴關係式。显然D1=0,D2=1。当n≥3时,不妨设n排在了第k位,其中k≠n,也就是1≤k≤n-1。那么我们现在考虑第n位的情况。当k排在原创 2016-08-14 10:49:10 · 244 阅读 · 0 评论 -
排序算法总结
一 O(n×n)的算法 1.冒泡排序 基本思想:冒泡排序的基本思想就是第i轮(i=n-1)从前到后(或者从后向前)的扫描n-i个数,每次都能够将前n-i个数中最大者“沉底”,(如果从后向前则表现为最小者“浮起来”)---所以我想这应该是冒泡排序的由来吧。代码如下:voidsort_mp(int a[],int n){ // a:待排序的数原创 2016-09-16 20:42:17 · 179 阅读 · 0 评论 -
全排列使用 c++ STL
#include #include#include #includeusing namespace std;int main (){ char b[7] ; int n; while (scanf("%s",b)!=EOF){ n = strlen(b); do{ printf("%s\n",b); }w原创 2016-04-17 11:17:56 · 335 阅读 · 0 评论 -
全排列 DFS 回溯
//dfs全排列#include#include char temp[5] = {'A','B','C','D'};//seedchar visited[5] ;//char out[5] ;//保存生成的字符串int deep ;int pos ;//out数组的位置void print(){ printf("%s\n",out);}int dfs(int step){原创 2016-05-15 15:44:23 · 1419 阅读 · 0 评论 -
DFS实现全排列
import java.util.Arrays;import java.util.Scanner;import java.util.Vector;class Main{static int MAX_SIZE = 10 ;static int G[][] = new int [MAX_SIZE][MAX_SIZE];static boole原创 2016-04-23 16:38:57 · 808 阅读 · 0 评论 -
最小生成树Kruskal算法+并查集检查连通
/*10 61 2 61 3 11 4 52 3 52 5 33 4 53 5 63 6 44 6 25 6 6*/// 本例解决最小生成树问题// 并查集来加快效率// cruscal算法针对稀疏矩阵#include#include#include using namespace std;int pre[100];int score[100] ;//原创 2016-04-24 14:52:05 · 811 阅读 · 0 评论 -
九度 题目1176:树查找
#include using namespace std;#define MAX 1010<<2int tr[MAX];int main(){ int n ,d ; while (~scanf("%d",&n)){ for (int i = 1 ; i <= n ; i++){ scanf("%d",&tr[i]); } scanf("%d原创 2016-06-01 21:04:57 · 249 阅读 · 0 评论 -
题目1170:找最小数
题目链接 点击打开链接#include #define MAX 0x7fffffffint main(){ int ta,tb; int sa,sb; int n,i; while (~scanf("%d",&n)){ ta = MAX ; tb = MAX; for ( i = 0 ; i < n ; i ++){原创 2016-06-01 21:19:25 · 292 阅读 · 0 评论 -
线段树
刚刚接触到线段树 , 所谓线段树,就是每个节点存储着数组中某一段的信息(最值或者其他),而叶子节点段长是1,就是数组中的某一个数。主要操作是建树 , 查询,更新等。下面是代码,题目参考 HDU 1754 I hate it注释很详细,可以仔细看,逻辑并不是很复杂、#include #include using namespace std;//线段树 数组实现#def原创 2016-05-22 15:23:24 · 229 阅读 · 0 评论 -
九度OJ 1547 动态规划
题目链接:http://ac.jobdu.com/problem.php?pid=1547题目描述:给定一个初始为空的栈,和n个操作组成的操作序列,每个操作只可能是出栈或者入栈。要求在操作序列的执行过程中不会出现非法的操作,即不会在空栈时执行出栈操作,同时保证当操作序列完成后,栈恰好为一个空栈。求符合条件的操作序列种类。例如,4个操作组成的操作序列符合条件的如下:原创 2016-08-15 15:43:44 · 375 阅读 · 0 评论 -
动态规划 - 九度OJ 1480
题目链接:http://ac.jobdu.com/problem.php?pid=1480我的提交 :很显然的一个dp问题,状态转移方程:代码:#include using namespace std;long long dp[1001];#define max(a,b)(a>b?a:b)int main(){ int N; int a[1001];原创 2016-08-12 19:58:06 · 375 阅读 · 0 评论 -
Simplex 单纯形算法的python实现
相关理论知识参考 单纯形理论知识算法可以在给定一个包含线性规划问题的标准形式的描述下,求解该线性规划问题。 例如某一个 pro.txt 文件内容如下: 6 3 3 -1 1 -2 0 0 2 1 0 1 1 0 -1 3 0 -3 0 1 -3 4 12 -7 7 -2 -1 -6 0执行算法之后得到结果: x_1 = 0.000000,x_2原创 2017-12-04 16:59:05 · 9146 阅读 · 6 评论