自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(207)
  • 收藏
  • 关注

原创 Linux下遍历目录下的所有文件

在linux下运行#include <unistd.h>#include <stdio.h>#include <dirent.h>#include <string.h>#include <sys/stat.h>#include <stdlib.h>void PrintDir(char *dir, int depth){ DIR *dp; struct dirent *entry;

2017-09-13 20:54:16 1480

原创 shell 获取一个文件的文件名和后缀名

*file=”thisfile.txt” thisfile echo “filename: ${file%.*}”txt echo “extension: ${file##*.}”

2017-09-13 20:48:50 976

原创 HDU 1083 Dinic最大流模板

#include<stdio.h>#include<string>#include<cstring>#include<queue>#include<algorithm>#include<functional>#include<vector>#include<iomanip>#include<math.h>#include<iostream>#include<sstream>#i

2017-02-22 19:11:25 412

原创 POJ 2318 TOYS 计算几何 判断点在线段的哪一侧

#include <cstdio>#include <string>#include <cstring>#include <queue>#include <algorithm>#include <functional>#include <vector>#include <iomanip>#include <cmath>#include <iostream>#include <ss

2017-02-22 19:11:05 397

原创 HDU 1525 Euclid's Game 博弈论

题目给出了两个正数a.b每次操作,大的数减掉小的数的整数倍。一个数变为0 的时候结束。谁先先把其中一个数减为0的获胜。问谁可以赢。Stan是先手。假设两个数为a,b(a>=b)如果a==b.那么肯定是先手获胜。一步就可以减为0,b如果a%b==0.就是a是b的倍数,那么也是先手获胜。如果a>=2*b. 那么 那个人肯定知道a%b,b是必胜态还是必败态。如果是必败态,先手将a,b变成a%b,b,那么

2017-02-22 19:10:40 344

原创 阿狸的打字机 AC自动机 FAIL树 树状数组

http://hzwer.com/5423.htmlhttp://www.cnblogs.com/Tunix/p/4559733.html#include <cstdio>#include <string>#include <cstring>#include <queue>#include <algorithm>#include <functional>#include <vector

2017-02-22 19:09:59 399

原创 POJ 3678 KatuPuzzle 2-SAT模板题

http://www.tuicool.com/articles/Qr6FJf只对确定的关系建边#include<stdio.h>#include<string>#include<cstring>#include<queue>#include<algorithm>#include<functional>#include<vector>#include<iomanip>#include<

2017-02-22 19:09:34 419

原创 CodeForces-159D Palindrome pairs DP

也可以用Manacher算法做 但是我觉得有点麻烦..而且没搞出来= =#include <cstdio>#include <string>#include <cstring>#include <queue>#include <algorithm>#include <functional>#include <vector>#include <iomanip>#include <cma

2017-02-22 19:09:16 328

原创 CodeForces 768C - Jon Snow and his Favourite Number 机智题

因为题目的数据在1000以内,可以开数组保存每一个的个数,然后直接处理..#include <cstdio>#include <string>#include <cstring>#include <queue>#include <algorithm>#include <functional>#include <vector>#include <iomanip>#include <c

2017-02-22 19:08:15 732

原创 CodeForces 768B - Code For 1 分治

#include <bits/stdc++.h>using namespace std;unordered_map<long long, long long> Len;long long GetLen(long long x){ if (x <= 1) return 1; if (Len.count(x) == 0) Len[x] = 2 * Ge

2017-02-22 19:07:57 437

原创 CSU 1065 Scientific Conference 贪心(基本的调度问题)

Description Functioning of a scientific conference is usually divided into several simultaneous sections. For example, there may be a section on parallel computing, a section on visualization,

2017-02-22 19:07:34 428

原创 HihoCoder 1393 二分图多重匹配 Dinic

#include<stdio.h>#include<string>#include<cstring>#include<queue>#include<algorithm>#include<functional>#include<vector>#include<iomanip>#include<math.h>#include<iostream>#include<sstream>#i

2017-02-22 19:06:10 396

原创 CSUOJ 1037 最佳页面置换算法 set

#include <iostream>#include <cstring>#include <queue>#include <stdlib.h>#include <stdio.h>using namespace std;const int MAX=1000+5;int N;int answer[MAX];char str[MAX][50+5];char source[2000000+5

2017-02-22 19:05:45 521

原创 UVA 11732 strcmp() Anyone 左兄弟右孩子Trie

/*因为比较函数如上,计算时要注意以下几点: 1.相同长度为L的两个单词比较代价为2L-1,出最后一次外要进行s结束的判断; 2.单词的比较长度应该为strlen(str)+1,结束符也是比较的一环; 3.如果两个单词相同,则多计算一次结束判断,比较次数+1。*/#include <iostream>#include <cst

2017-02-12 13:00:04 350

原创 LA 3942 Remember the Word Trie树 DP

#include <iostream>#include <cstring>#include <queue>#include <stdlib.h>#include <stdio.h>using namespace std;/*思路:dp[i]=sum(dp[i+len(x)])dp[i]表示从字符i开始的字符串即后缀(s[i..L])的分解方案数。x为是 (s[i..L]的前缀。*/con

2017-02-12 12:59:44 314

转载 HDU 4117 GRE Words AC自动机+线段树

http://blog.csdn.net/no__stop/article/details/12287843#include<iostream>#include<queue>#include<algorithm>#include<stdlib.h>#include<stdio.h>#include<string.h>using namespace std;const int MAXN=40

2017-02-12 12:59:23 348

原创 HDU 3068 最长回文 Manacher

#include<iostream>#include<queue>#include<algorithm>#include<stdlib.h>#include<stdio.h>#include<string.h>using namespace std;const int MAX=111111<<1;char Str[MAX];int Len;int Radius[MAX];void M

2017-02-12 12:58:01 265

原创 HDU 3294 Girls’ research Manacher

题目中有一个规律的字母替换,输出最长回文(len>=2)的起始点和终点和替换后的回文。#include<iostream>#include<queue>#include<algorithm>#include<stdlib.h>#include<stdio.h>#include<string.h>using namespace std;const int MAX=222222<<1;cha

2017-02-12 12:57:44 313

原创 POJ 3974 Palindrome Manacher

#include<iostream>#include<queue>#include<algorithm>#include<stdlib.h>#include<stdio.h>#include<string.h>using namespace std;const int MAX=1111111<<1;char Str[MAX],Ch;int Len;int Radius[MAX];vo

2017-02-12 12:57:27 252

转载 POJ 1159 最少添加几个字母构成回文 DP

设原序列S的逆序列为S' ,则这道题目的关键在于,最少需要补充的字母数 = 原序列S的长度 - S和S'的最长公共子串长度http://www.cnblogs.com/en-heng/p/3963803.html#include<iostream>#include<queue>#include<algorithm>#include<stdlib.h>#include<stdio.h>#

2017-02-12 12:56:47 537

原创 HDU 5716 带可选字符的多字符串匹配 ShiftAnd

不能用cin或者scanf读入,因为题目给的字符串中包含空格等乱七八糟的东西,只能用gets读入,最后用getchar吃一个换行符。#include<iostream>#include<queue>#include<algorithm>#include<stdlib.h>#include<stdio.h>#include<iomanip>#include<bitset>#include

2017-02-12 12:56:03 526

转载 HDU 5778 abs 枚举 素数相关

http://www.cnblogs.com/flipped/p/6372324.html题意给定x,找出使|y-x|最小,且每个质因子都出现两次的y.题解因为每个质因子出现两次,所以y一定可以开根号。于是我们枚举sqrt(x)附近的sqrt(y),质因子都只出现一次就是可行的。比赛的时候我是打好质数表,然后枚举质因子。实际上直接枚举还更快。#include <iostream>#include

2017-02-12 12:55:32 264

转载 CSUOJ 1411 Longest Consecutive Ones

转自:http://www.cnblogs.com/CSU3901130321/p/4202539.html题目大意:希望在 k 步之内,将尽可能多的1移到相邻的位置上这里依靠前缀和解决问题我们用pos[i]保存第i个1的位置,这里位置我以1开始用sum[i]保存前 i 个1从 0 点移到当前位置所需的步数每次进行判断能否将 st 号 到 la 号的1移到相邻位置,我们要先清楚,为了使移动步数最少,

2017-02-12 12:55:13 257

原创 HYSBZ - 2565 最长双回文串 Manacher

网上的题解都是回文树的做法,改天学一波。#include<iostream>#include<queue>#include<algorithm>#include<stdlib.h>#include<stdio.h>#include<string.h>using namespace std;const int MAX=1111111<<1;char Str[MAX],Ch;int Le

2017-02-12 12:54:28 318

原创 POJ 1556 计算几何基础

http://www.cnblogs.com/kuangbin/p/3189309.html#include<iostream>#include<iomanip>#include<queue>#include<algorithm>#include<cstdlib>#include<cstdio>#include<cstring>#include<cmath>using namespac

2017-02-12 12:53:39 341

原创 POJ 1269 Intersecting Lines 计算几何基础

#include<iostream>#include<iomanip>#include<queue>#include<algorithm>#include<cstdlib>#include<cstdio>#include<cstring>#include<cmath>using namespace std;const double eps=1e-8;inline bool zero(d

2017-02-12 12:53:25 276

原创 POJ 1654 Area 计算几何基础

题意:一个人初始在原点,按照题目所给走法,求最后得到的矩形的面积;1~9分别表示八个方向,5表示停止。分析:以起点为原点,每走一条路,把起点和终点分别和原点连接构成两个向量,然后用所得向量求出该三角形的面积;最后矩形的面积就是这若干个三角形的面积和。#include<iostream>#include<iomanip>#include<queue>#include<algorithm>#

2017-02-12 12:53:09 262

原创 POJ 1113 Wall 凸包求边长 Graham扫描法

http://www.cnblogs.com/kuangbin/archive/2012/04/13/2445633.html#include<iostream>#include<iomanip>#include<queue>#include<algorithm>#include<cstdlib>#include<cstdio>#include<cstring>#include<cm

2017-02-12 12:52:43 261

原创 POJ 2826 An Easy Problem 计算几何

http://www.cnblogs.com/kuangbin/p/3192511.html#include<iostream>#include<iomanip>#include<queue>#include<algorithm>#include<cstdlib>#include<cstdio>#include<cstring>#include<cmath>using namespac

2017-02-12 12:52:11 406

原创 HDU 1846 Brave Game (巴什博弈) SG

#include<iostream>#include<iomanip>#include<queue>#include<algorithm>#include<cstdlib>#include<cstdio>#include<cstring>#include<cmath>using namespace std;const int MAX=1111;int C,N,M,SG[MAX],S[

2017-02-12 12:51:35 320

原创 HDU 1847 Good Luck in CET-4 Everybody SG函数 博弈论

#include<iostream>#include<iomanip>#include<queue>#include<algorithm>#include<cstdlib>#include<cstdio>#include<cstring>#include<cmath>using namespace std;const int MAX=1111;int N,M,SG[MAX],S[MA

2017-02-12 12:51:14 337

原创 HDU 2509 Be the Winner Nim博弈

先手胜当且仅当:1. 所有堆石子数都为1且游戏的SG值为0.2. 存在某堆石子数大于1且游戏的SG值不为0.证明:1. 若所有堆石子数都为1且SG值为0,则共有偶数堆石子,故先手胜.2.i) 只有一堆石子数大于1时,我们总可以对该堆石子操作,使操作后石子堆数为奇数且所有堆得石子数均为1.ii) 有超过一堆石子数大于1时,先手将SG值变为0即可,且总还存在某堆石子数大于1.#include<i

2017-02-12 12:51:00 263

原创 HDU 1536 S-Nim SG函数 Nim

要记得排序集合S,SG在集合S确定后就可以求解了.#include<iostream>#include<iomanip>#include<queue>#include<algorithm>#include<cstdlib>#include<cstdio>#include<cstring>#include<string>#include<cmath>using namespace s

2017-02-12 12:50:40 276

原创 CSU 1206 概率DP

题意: Alice和Bob玩起了扑克牌比大小的游戏。首先他们拿来了若干副没有大小王的扑克牌,充分洗牌之后给Alice和Bob各发N张牌,牌的背面朝上,因此两人并不知道这些牌的点数。 之后两人各自从N张牌中随机取出K (K <= N)张,同时翻开并计算各自K张牌的点数之和,谁的点数更大谁就获胜,如果点数相等视作平局。 在扑克牌中,数字牌的点数和牌上的数字相等,A的点数为1,J的点数为11,Q的点

2016-11-23 14:41:20 270

转载 扩展欧几里德算法详解

扩展欧几里德算法 转载于:http://blog.csdn.net/zhjchengfeng5/article/details/7786595 先介绍什么叫做欧几里德算法 有两个数 a b,现在,我们要求 a b 的最大公约数,怎么求?枚举他们的因子?不现实,当 a b 很大的时候,枚举显得那么的naïve ,那怎么做? 欧几里德有个十分又用的定理: gcd(a, b

2016-11-16 13:53:02 256

原创 CodeForces 527C - Glass Carving set multiset 二分

http://codeforces.com/problemset/problem/527/C/*http://blog.csdn.net/u011580493/article/details/44457477题意:对于一个矩形,宽为w,高为h。现在对其进行一系列的切割。让你求出每次切割后的最大面积的矩形。思路:set:内部已经有序,记录已经切割了的位置。multiset:内部已经有序,记

2016-11-13 14:57:53 357

原创 CodeForces 527B - Error Correct System 哈希

http://codeforces.com/problemset/problem/527/B#include<bits/stdc++.h>using namespace std;const int MAX=200005;char S[MAX],T[MAX];int N,Hash[200][200]={0},MarkS[200]={0},MarkT[200]={0};int main(){

2016-11-13 14:57:33 400

原创 POJ 3468 A Simple Problem with Integers 线段树区间更新

#include<stdio.h>#include<string>#include<cstring>#include<queue>#include<algorithm>#include<functional>#include<vector>#include<iomanip>#include<math.h>#include<iostream>#include<sstream>#i

2016-11-13 14:57:14 286

原创 51NOD 1632 B君的连通 期望计算 推公式 打表

https://www.51nod.com/onlineJudge/questionCode.html#!problemId=1632#include<bits/stdc++.h>using namespace std;const long long MOD=1000000007;const int MAX=100007;long long Ans[MAX];int N,a,b;/*因

2016-11-13 14:56:52 375

原创 HDU 3308 LCIS 线段树 PushUp应用

http://acm.hdu.edu.cn/showproblem.php?pid=3308#include<bits/stdc++.h>using namespace std;const int MAX=100005;int N,M,A[MAX];struct Node{ int l,r,c; //l,r - 左右边界 c - 长度 int ln,rn;

2016-11-13 14:56:34 394

空空如也

空空如也

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

TA关注的人

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