自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(63)
  • 资源 (1)
  • 收藏
  • 关注

原创 HDU-1213 并查集裸题

#include <cstdio>#include <cstring>#include <vector>#include <queue>#include <iostream>#include <cmath>#include <vector>#include <algorithm>#include <map>#include <set>using namespace std;ty

2017-09-03 08:25:29 263

原创 HDU-2203 kmp水一发

#include <cstdio>#include <cstring>#include <vector>#include <queue>#include <iostream>#include <cmath>#include <vector>#include <algorithm>#include <map>#include <set>using namespace std;ty

2017-09-01 23:45:39 257

原创 HDU-3068 最长回文串

用的Manacher法,基本上是参考博客链接 dp法内存不够,中心扩展法时间不够//Manacher法#include <cstdio>#include <cstring>#include <vector>#include <queue>#include <iostream>#include <cmath>#include <vector>#include <algorithm>

2017-09-01 22:21:26 328

原创 求直线ax+by+c=0 上有多少个整点(x,y)满足x∈[-100,100],y∈[-100,100]

#include <cstdio>#include <cstring>#include <vector>#include <queue>#include <iostream>#include <cmath>#include <vector>#include <algorithm>#include <map>#include <set>using namespace std;ty

2017-08-25 14:36:45 538

原创 八数码

//输入// 2 3 4 // 1 5 0 // 7 6 8// 1 2 3 // 4 5 6 // 7 8 0//输出// l// 2 3 4 // 1 0 5 // 7 6 8 // d// 2 3 4 // 1 6 5 // 7 0 8 // r// 2 3 4 // 1 6 5 // 7 8 0 // u// 2 3 4 // 1 6 0 // 7 8

2017-08-25 00:53:20 281

原创 UVA-140 最小带宽 以后再补吧

夭折的一题,应该用set来存储节点的 可参考代码链接#include <cstdio>#include <cstring>#include <vector>#include <queue>#include <iostream>#include <cmath>#include <vector>#include <algorithm>#include <map>#include <s

2017-08-24 21:56:27 221

原创 UVA-129 困难的串

每次在末尾添加前都先检查一下是否合法 输出格式搞得我真蛋疼#include <cstdio>#include <cstring>#include <vector>#include <queue>#include <iostream>#include <cmath>#include <vector>#include <algorithm>#include <map>usi

2017-08-24 18:20:18 262

原创 UVA-524 素数环 回溯

经典回溯题#include <cstdio>#include <cstring>#include <vector>#include <queue>#include <iostream>#include <cmath>#include <vector>#include <algorithm>#include <map>using namespace std;typedef long

2017-08-24 17:19:00 172

原创 暴力求解练习

long long还是绕不过去的一个坑#include <cstdio>#include <cstring>#include <vector>#include <queue>#include <iostream>#include <cmath>#include <vector>#include <algorithm>#include <map>using namespace std

2017-08-23 09:53:12 230

原创 状压dp练习

POJ-3254 主要参考题解链接#include <cstdio>#include <cstring>#include <vector>#include <queue>#include <iostream>#include <cmath>#include <vector>#include <algorithm>#include <map>using namespace std

2017-08-22 21:52:39 288

原创 HDU 2196 Computer(求树任意点的最远点)

dp[i][0]表示子树的最远路径,dp[i][1]表示子树的次远路径,dp[i][2]表示朝父节点的最远路径#include <cstdio>#include <cstring>#include <vector>#include <queue>#include <iostream>#include <cmath>#include <vector>#include <algorith

2017-08-22 16:54:46 184

转载 POJ-1985 树的最长路径

紫书上dp写法的代码链接 两次dfs的代码链接 我的垃圾代码,WA,本想要两次dfs解决,也不知道出什么错了,还是得好好长点姿势才行啊:#include <cstdio>#include <cstring>#include <vector>#include <queue>#include <iostream>#include <cmath>#include <vector>#inc

2017-08-22 12:22:29 447

原创 poj-1655 树的重心

因为建立的树实际上主要是记录点的无向图G,dfs(u,r)的r是用来防止遍历子节点时dfs到父节点,还用到了记忆化,并且是在一次dfs时求答案,效率有点低,AC用时300ms#include <cstdio>#include <cstring>#include <vector>#include <queue>#include <iostream>#include <cmath>#incl

2017-08-21 23:59:42 195

原创 01背包练习

HDU2546:饭卡 关键是先找出最大价格的物品,然后再dp求出保留5元后,可以花费最多的值,最后再减去最大价格#include <cstdio>#include <cstring>#include <vector>#include <queue>#include <iostream>#include <cmath>#include <vector>#include <algor

2017-08-21 08:33:35 192

转载 若干个(大量)数字中找前K大/小的元素--数值型

面试的时候大脑真的会停止转动啊,竟然会被这种题给难住 转载自:http://blog.csdn.net/gogokongyin/article/details/51210794方法一:根据快速排序划分的思想 :思路很简单,但是也有快排的缺点,对有序程度比较强的序列效率较低(1) 递归对所有数据分成[a,b)b(b,d]两个区间,(b,d]区间内的数都是大于[a,b)区间内的数 ; (2) 对

2017-08-20 20:18:21 280

转载 Python格式化输出%s和%d

转载自:http://blog.csdn.net/u013216667/article/details/51316971Python print格式化输出。1. 打印字符串print ("His name is %s"%("Aviad"))效果:2.打印整数print ("He is %d years old"%(25))效果

2017-08-17 18:25:12 3041

原创 (mark)UVA-1626 括号序列,转移方程很有意思

如果S形如(S’)或者[S’],转移到d(S’) 如果S至少有两个字符,则可以分成AB,转移到d(A)+d(B)紫书上的经典,先mark一下,以后再写

2017-08-17 11:06:37 220

原创 UVA-10003 切木棍,区间dp

dp[i][j]表示对 区间为(i,j)的棍子 的处理,注意对两端的处理#include <cstdio>#include <cstring>#include <vector>#include <queue>#include <iostream>#include <cmath>#include <vector>#include <algorithm>using namespace s

2017-08-17 10:11:36 222

原创 HRBUST-1600 最优矩阵链乘

就是区间dp,c++引用真的是优雅#include <cstdio>#include <cstring>#include <vector>#include <queue>#include <iostream>#include <cmath>#include <vector>#include <algorithm>using namespace std;#define DEBUGc

2017-08-17 01:53:50 380

原创 hdu-1159 裸LCS

把dp边界值的初始化放到二重循环里,代码看上去真是优雅呢!#include <cstdio>#include <cstring>#include <vector>#include <queue>#include <iostream>#include <cmath>#include <vector>#include <algorithm>using namespace std;#de

2017-08-16 23:52:58 242

原创 POJ-2533 裸LIS

紫书上的模板还真是好套呢,我的代码算是O(n3)O(n^3)的复杂度吧#include <cstdio>#include <cstring>#include <vector>#include <queue>#include <iostream>#include <cmath>#include <vector>#include <algorithm>using namespace st

2017-08-16 23:17:16 168

原创 UVa12563 -Jin Ge Jin Qu hao(DP) 01背包

01背包,t的数量级其实被限制在了t<=180*n+678的范围了,这题跟普通01背包的区别是,要求背包正好被填满并求相同歌曲数目下时间最长,不过如果真的模拟背包填满的状况的话,会TLE,我也因此被卡了很久,实际上只需要用另一个背包记录时间的值就行了。ac代码#include <cstdio>#include <cstring>#include <vector>#include <queue>

2017-08-16 09:22:09 197

原创 uva116单向TSP 多段图dp

补充一下知识:ACM中无穷大的设置#include <cstdio>#include <cstring>#include <vector>#include <queue>#include <iostream>#include <cmath>#include <vector>#include <algorithm>using namespace std;#define DEBUGc

2017-08-15 02:37:00 201

原创 LeetCode 312. Burst Balloons(戳气球)

区间dp,i表示区间长度,j表示区间起始,k遍历区间内的任意一点 二位数组初始化为0卡了很久,对c的函数都不熟悉了,memset只能对一维指针使用,里面参数也要注意class Solution {public: int maxCoins(vector<int>& nums) { int* dpnums = new int[nums.size()+2]; dpn

2017-08-15 01:38:08 661

原创 uva-1347经典dp,边界设置很重要

两个人A、B同时从最左边的点出发,一起严格向最右点走,且经过所有点一次dp(i,j)表示max(i,j)之前的所有点都走过,在这个状态下,到终点状态还要走多少距离d(i,j)==d(j,i),所以规定i>j(除了起点和终点的情况)每一次状态转移,都是使max(i,j)增加1格边界值设置d[t-1][i]=dist(t-1,t)+dist(i,t);状态转移d[i][j]=min(dp(i+

2017-08-12 08:53:53 254

原创 uva-437 矩阵嵌套dp

旧题新做,以前都是照着背包九讲上的模板来的,现在照着紫书上的有向无环图DAG来,把每一个节点当成一个点,可以嵌套表明两个点连通,d(i)表明在节点i结束的最长路长度。不过解题重点还是把一个长方体看成三个高度不同的长方体。#include <cstdio>#include <cstring>#include <vector>#include <queue>#include <iostream>

2017-08-09 16:49:41 277

原创 uva-536,从先序中序得出后序

build右序列的时候粗心,根节点p传错参数了,改了很久才发现#include <cstdio>#include <cstring>#include <vector>#include <queue>#include <iostream>using namespace std;#define DEBUGconst int maxn=26+5,maxv=26;char pre_s[max

2017-08-08 11:14:45 144

原创 uva-673 平衡的括号,栈模拟

栈下溢或者最后不为空,则输出No#include <cstdio>#include <cstring>#include <vector>#include <queue>#include <iostream>using namespace std;#define DEBUGconst int maxn=128+5,maxv=26;int t;char s[maxn];char q[

2017-08-08 10:07:11 229

原创 uva-1600 巡逻机器人

bfs判断visited最好还是在入栈之前,这道题的就算visited==true,但如果走过的’1‘数量比较少的话,还是可以继续入栈的#include <cstdio>#include <cstring>#include <vector>#include <queue>#include <iostream>using namespace std;#define DEBUGconst

2017-08-08 01:52:24 344

原创 前端js小练习,动态生成乘法表

<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Document</title> <link rel="stylesheet" href="css/style.css"> <style>/* .body{width: 10px;height: 10px;}*/

2017-08-07 17:05:40 761

原创 uva-439 骑士的移动

bfs,用队列记录步数#include <cstdio>#include <cstring>#include <vector>#include <queue>#include <iostream>using namespace std;#define DEBUGconst int maxn=1000+5,maxv=26;int a,b,c,d;bool visited[maxn][

2017-08-07 01:35:04 216

原创 uva-10129 单词

成语接龙可以抽象为欧拉回路,单词为有向边,词头词尾为节点,用dfs判断是否图是否连通,先判断入度出度,然后dfs,在判断图是否连通。visitedv数组用来区别不存在的点、存在的点和存在且已用dfs访问过的点#include <cstdio>#include <cstring>#include <vector>#include <queue>#include <iostream>using

2017-08-06 21:27:28 165

原创 uva-10305拓扑排序水一发

队列实现,思路简单#include <cstdio>#include <cstring>#include <vector>#include <queue>#include <iostream>using namespace std;#define DEBUGconst int maxn=100+5;int m,n,a,b;int indegree[maxn];int G[maxn

2017-08-05 03:22:44 208

原创 stud-2779裸bfs

c++的数组下标为负数竟然不报错#include <cstdio>#include <cstring>#include <vector>#include <queue>#include <iostream>using namespace std;#define DEBUGconst int maxn=15+5;char buf[maxn][maxn];bool visited[ma

2017-08-05 02:22:00 245

原创 uva-572 种子填充floodfill

#include <cstdio>#include <cstring>#include <vector>#include <queue>#include <iostream>using namespace std;#define DEBUGconst int maxn=100+5;char buf[maxn][maxn];int idx[maxn][maxn];int direc

2017-08-04 15:19:33 164

原创 uva-297 四分树

边处理边统计,模拟画图#include <cstdio>#include <cstring>#include <vector>#include <queue>#include <iostream>using namespace std;const int maxn=400;#define DEBUGbool buf[32][32];char s1[2000],s2[2000];i

2017-08-04 03:18:55 265

原创 uva-699

#include <cstdio>#include <cstring>#include <vector>#include <queue>#include <iostream>using namespace std;const int maxn=300;int sum[maxn];void build(int p){ int v;cin>>v; if(v==-1)ret

2017-08-04 01:04:45 199

原创 uva-839天平

白书代码,太优美,简直不能再简洁#include <cstdio>#include <cstring>#include <vector>#include <queue>using namespace std;const int maxn=300;bool solve(int& w){ int w1,w2,d1,d2; scanf("%d %d %d %d",&w1,&d1

2017-08-03 08:16:16 214

原创 uva-122 树的层次遍历

uva 122 白书代码#include <cstdio>#include <cstring>#include <vector>#include <queue>using namespace std;const int maxn=300;char s[maxn];bool failed;struct node{ bool have_value; int v;

2017-08-03 07:24:44 237

原创 uva679

二叉树模拟#include <cstdio>#include <cstring>using namespace std;const int maxd = 20;bool s[1<<maxd];int index;int main() { int d,n; while(scanf("%d%d",&d,&n)!=EOF){ memset(s,0,sizeof(

2017-08-03 05:32:05 144

算法导论英文版第三版

英文版的比翻译版的好很多,很多错误和不明白的都能对着看出来

2014-09-09

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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