
oj
danache
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
棋盘问题,递归。
#include#includeusing namespace std;const int maxNum = 9;double getResult(int n,int x1,int y1,int x2,int y2);int tmpresult[15][maxNum][maxNum][maxNum][maxNum];int board[maxNum][maxNum];i原创 2014-08-16 11:20:00 · 655 阅读 · 0 评论 -
回溯--迷宫问题
感觉做了两个回溯之后都差不多....#include #include using namespace std;typedef enum{AVAILABEL, ROUTE, BACKTRACKED, WALL} Status;//前期准备 记录当前迷宫的状态,分别为可用(未探索),已用,已经探测过没有退路的,还有墙typedef enum{ UNKNOWN, EAS原创 2015-08-16 20:01:32 · 335 阅读 · 0 评论 -
poj 3009 DFS
忙活了一上午,真是…………… 最终原因是因为没有memset………. 下次可算记住了 ………简单地DFS,与之前的区别是这个移动是可以一次到底的,其他的就是回溯剪枝,不过为什么测例我有点看不懂…算了,上代码#include <iostream>using namespace std;const int maxSize = 25;const int INF = 10000;int maz原创 2015-10-18 12:48:04 · 277 阅读 · 0 评论 -
POJ2488 dfs回溯
和之前的差不多,这个问题关键是字典序输出,遍历顺序弄好了,第一个扫描成功的就是了。#include<iostream>using namespace std;const int maxN = 27;struct Node{ char x; int y;};Node answer[maxN];bool check[maxN][maxN];bool flag;int n,原创 2015-10-20 10:39:57 · 358 阅读 · 0 评论 -
poj3083 dfs+bfs一次ac
两个dfs一个bfs写的有点乱了…关键就是往哪走的两个数组#include <iostream>#include <queue>using namespace std;const int INF = 100000;const int MAXNN = 41;char maze[MAXNN][MAXNN];bool check[MAXNN][MAXNN];int n, w, h,leftN原创 2015-10-21 15:27:02 · 301 阅读 · 0 评论 -
POJ1426 想象不到的广搜...
要不是分类真想不到这是广搜…要不是看了大神的blog我真想不到还可以这么做….#include<iostream>using namespace std;int mod[600000];int main(){ int n; while( cin >> n){ if(!n) return 0; mod[1] = 1;原创 2015-11-15 18:26:38 · 290 阅读 · 0 评论 -
拉链法哈希表添加
//// main.cpp// Hashtable//// Created by dan on 16/8/22.// Copyright © 2016年 dan. All rights reserved.//#include <iostream>using namespace std;#include <string>class hashnode{private:原创 2016-08-22 11:23:01 · 521 阅读 · 0 评论 -
POJ2479 DP
两个点,一个是递推式。一开始我想的是 la[i] = max(la[i - 1] + a[i],a[i])实际上应该是: 若la[i - 1] < 0, 则la[i] = a[i] 否则la[i] = la[i - 1] + a[i]即截止到当前位的最大数字串是要考虑之前的la[i - 1]是否小于0,而不是考虑当前的a[i]是否小于0! 此外,最后输出和的时候直接一次遍历0到n原创 2016-09-13 14:16:29 · 289 阅读 · 0 评论 -
POJ1050 LCS变体,二维数组DP
琢磨这个题琢磨了一下午,看了网上好多的代码都没写注释,也没看懂,最后找到了一个写的很清楚的 http://blog.sina.com.cn/s/blog_695800d10100q6as.html总体来说这个题求矩阵的dp,思路就是在每次循环中将每列叠加起来形成一个1行n列的数组,在对这个数组求最大连续值。获得结果更新最大值。现在结合代码说一下://// main.cpp// POJ1翻译 2016-09-17 16:56:27 · 314 阅读 · 0 评论 -
POJ2777线段树....
应该是这次刷题最后一次线段树了…区间更新+binary。 区间更新在pushdown时将子节点的color和flag都置为父节点的flag.重要的是二值化。即将一个数表示成位运算。此时pushup使用或操作即可。//// main.cpp// POJ2777//// Created by dan on 16/10/9.// Copyright © 2016年 dan. All r翻译 2016-10-09 20:41:01 · 388 阅读 · 0 评论 -
POJ1988并查集
//// main.cpp// POJ1988//// Created by dan on 16/9/27.// Copyright © 2016年 dan. All rights reserved.////本题借鉴了其他博主的思路http://blog.youkuaiyun.com/ascii991/article/details/7536826//本题属于并查集,与之前并查集相比,多翻译 2016-09-27 09:55:13 · 287 阅读 · 0 评论 -
HDU1166线段树基础题
线段树从零学起,先练习一个最简单的(虽说最简单的我也搞了一天)//// test.cpp// HDU1166//// Created by dan on 16/9/29.// Copyright © 2016年 dan. All rights reserved.//#include <cstring>#include <iostream>#define MAXN 50005原创 2016-09-29 21:08:20 · 335 阅读 · 0 评论 -
POJ3468线段树区间更新
又一次被线段树虐..这里主要是区间延迟更新的问题,即在查询和插入的时候才对节点进行延迟添加,大大减缓了时间。 参考博文链接 http://blog.youkuaiyun.com/metalseed/article/details/8039326 http://blog.sina.com.cn/s/blog_a2dce6b30101l8bi.html//// test.cpp// POJ34原创 2016-09-30 17:15:46 · 373 阅读 · 0 评论 -
数据结构1-3 灯塔
我自己用的merge排序,只有50通过。待我优化一下。#include using namespace std;#define maxLength 4000000typedef long long Rank;class Node{public:int x;int y;};class NodeList{public:Node* _elem;原创 2015-07-29 10:48:02 · 768 阅读 · 0 评论 -
数据结构清华大学--OJ1.1Range
PA的第一题,过是很好过,一开始用暴力循环,55分。后来开始想用sort和二分查找来降低复杂度,可是清华的OJ不支持algorithm,之后在别人的博客上看到了qsqrt的方法,之后接见了别人的代码,终于100过了。。不过发现好多问题。1.给定输入n的数目是50000.直接int S[50000]会超时,但是先define L 50000;在int S[L]就不会....2.scanf原创 2015-05-26 19:09:30 · 4399 阅读 · 1 评论 -
poj 1166 拨钟问题 参考USACO 方法
const long CLEAR=57521883;const long MOVE[10] = {0,18911232, 19136512, 2363904, 16810048, 2134536, 262657, 36936, 73, 4617};bool canMatch(CLOCK clocks,vector m);void initial(ifstream fin,CLOCK c原创 2014-08-13 15:04:22 · 641 阅读 · 0 评论 -
poj 1661 动态规划
#include#includeusing namespace std;const int manx = 40001;struct Block{int X1,X2,H;};bool compare(Block b1,Block b2){return b1.H > b2.H;}Block blocks[manx];int fall(int X,int Y,原创 2014-08-24 20:09:05 · 337 阅读 · 0 评论 -
poj1724 广搜之找路
/*ROADSTime Limit: 1000MS Memory Limit: 65536KTotal Submissions: 10989 Accepted: 4048DescriptionN cities named with numbers 1 ... N are connected with one-way roads. Each road has two pa原创 2014-11-13 21:20:48 · 380 阅读 · 0 评论 -
poj1753 广搜
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////原创 2014-10-26 16:38:08 · 274 阅读 · 0 评论 -
文件结构“图” poj2775
#include#include#include#includeusing namespace std;class Dir{public:string name;vector dirs;vector files;};Dir getResult(string name){Dir dir;string tmp;cin >> tmp;if(tm原创 2014-08-18 16:55:46 · 1756 阅读 · 1 评论 -
poj1458最长公共子序列
动态规划。///////////////////////////////////////////////////////////////////////////#include#include#includeusing namespace std;const int MAXN = 100;int result[MAXN][MAXN];int main(){str原创 2014-08-21 15:55:56 · 450 阅读 · 0 评论 -
广搜入门,poj3278
#include#includeusing namespace std;const int MAXN = 1000000;int visit[MAXN];struct Steps{int stepNum;int num;Steps(int num_,int stepNum_):num(num_),stepNum(stepNum_){};};int N原创 2014-09-22 16:40:33 · 388 阅读 · 0 评论 -
poj2373 灌溉草场
////////////////////////////////////////////////////////////////////////////////////////////////////#include#include#include//使用了优先队列using namespace std;const int INFINITE = 1 const int原创 2014-08-27 20:58:47 · 1389 阅读 · 0 评论 -
百炼2792 水的一...........
#include#includeusing namespace std;const int MAXN = 10000;int a[MAXN + 1];int b[MAXN + 1];int main(){int n;cin >> n;while(n--){int s,caseNum(0),i,j;int aNum,bNum;cin >> s;原创 2014-08-25 16:15:31 · 488 阅读 · 0 评论 -
最长上升子序列。百炼2757 2种方法
s#include#includeusing namespace std;const int MAXN = 1000;int a[MAXN];int result[MAXN];int main(){int n;cin>>n;for(int i = 1;i { cin >> a[i];result[i] = 1;}for(int i = 2;i原创 2014-08-21 14:05:56 · 489 阅读 · 0 评论 -
连连看小游戏,递归问题
题目源自 程序设计实习 12章 diw原创 2014-08-15 16:08:48 · 624 阅读 · 0 评论 -
poj 1164 简单地广搜
/////////////////////////////////////我觉得/////////////////////////////////////////*2815:城堡问题查看 提交 统计 提示 提问总时间限制: 1000ms 内存限制: 65536kB描述 1 2 3 4 5 6 7 #原创 2014-11-13 19:21:21 · 546 阅读 · 0 评论 -
A:Simple prefix compression来自百炼2
说是要用递归,我智商较低没想出来...s原创 2014-08-17 14:51:50 · 867 阅读 · 0 评论 -
POJ2528线段树变体
本题为区间更新+hash,线段树部分和之前类似,关键是hash部分。用到了二分hash以及数组去重,等技巧。 参考: http://blog.youkuaiyun.com/metalseed/article/details/8041334//// main.cpp// POJ2528//// Created by dan on 16/10/3.// Copyright © 2016年原创 2016-10-04 10:56:47 · 321 阅读 · 0 评论