自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 spoj687 重复次数最多的连续重复子串(后缀数组)

给定一个字符串,求重复次数最多的连续重复子串。 http://www.spoj.com/problems/REPEATS/枚举可能的循环节长度,不满足单调性,所以不能二分。 每个长度如果可以,一定会选到相邻的L个,于是找到0,L,2*L等等连续的两个,因为间隔L的两个一定是对应位置(画图理解), 找有没有满足s[L*i]== s[L*(i+1)]…每次(n/L)的复杂度,算起来 O(n/1+n

2017-02-28 20:10:30 724

原创 后缀数组--重复子串

http://poj.org/problem?id=1743题目意思是求不重叠的最长相同变化的子串,输出该长度 先二分答案,判断是否 存在两个长度为 k 的子串是相同的,且不重叠。利用 height 数组。把排序后的后缀分成若干组,其中每组的后缀之间的 height 值都 不小于 k。这一组内任意两个都是可以的,于是找到距离最远的两个看是不是>k(保证不重叠)#include <cstdio>

2017-02-27 23:41:57 540

原创 拓展欧几里得-青蛙得约会

#include <cstdio>#include <iostream>#include <cstring>using namespace std;long long x,y,m,n,l,a,b,p;long long exgcd(long long a,long long b,long long &xx,long long &yy){ if(b == 0){ xx

2017-02-27 13:21:26 438

原创 【poj2774】 后缀数组最长公共子串

http://poj.org/problem?id=2774 题意:给你两串字符,要你找出在这两串字符中都出现过的最长子串………思路:先用个分隔符将两个字符串连接起来,再用后缀数组求出height数组的值,找出一个height值最大并且i与i-1的位置分别在两串字符中就好…..h【i】本是求排名再 i 的 和 i -1 的两个串相同前缀的长度,但是这样复杂度较高,于是考虑如果按着在串里的位置考虑,

2017-02-27 10:18:17 416

原创 最优贸易-tarjan+拓扑更新

描述 C 国有 n 个大城市和 m 条道路,每条道路连接这 n 个城市中的某两个城市。任意两个 城市之间最多只有一条道路直接相连。这 m 条道路中有一部分为单向通行的道路,一部分 为双向通行的道路,双向通行的道路在统计条数时也计为 1 条。 C 国幅员辽阔,各地的资源分布情况各不相同,这就导致了同一种商品在不同城市的价 格不一定相同。但是,同一种商品在同一个城市的买入价和卖出价始终是相同

2017-02-22 18:25:54 468

原创 spojQTREE - Query on a tree树链剖分

You are given a tree (an acyclic undirected connected graph) with N nodes, and edges numbered 1, 2, 3…N-1. We will ask you to perfrom some instructions of the following form: CHANGE i ti : change th

2017-02-16 15:38:42 355

原创 codeforces #396

A:题意:两个字符串,找一个字符串是其中一个字串不是另一个,最长多长tip:除非一模一样的两个串,不然长的那个就是#include <iostream>#include <cstdio>#include <cstring>const int maxn = 1e5+10;char a[maxn],b[maxn];using namespace std;void init(){ sc

2017-02-15 07:55:37 264

原创 spojGSS1 线段树维护区间和最大值

http://www.spoj.com/problems/GSS1/ You are given a sequence A[1], A[2], …, A[N] . ( |A[i]| ≤ 15007 , 1 ≤ N ≤ 50000 ). A query is defined as follows: Query(x,y) = Max { a[i]+a[i+1]+…+a[j] ; x ≤ i ≤ j

2017-02-15 07:38:15 752

原创 bzoj1001: [BeiJing2006]狼抓兔子

Description 现在小朋友们最喜欢的”喜羊羊与灰太狼”,话说灰太狼抓羊不到,但抓兔子还是比较在行的, 而且现在的兔子还比较笨,它们只有两个窝,现在你做为狼王,面对下面这样一个网格的地形:左上角点为(1,1),右下角点为(N,M)(上图中N=4,M=5).有以下三种类型的道路 1:(x,y)<==>(x+1,y) 2:(x,y)<==>(x,y+1) 3:(x,y)<==>(x

2017-02-15 07:28:56 255

原创 斜率优化

http://www.lydsy.com/JudgeOnline/problem.php?id=1010 Description P教授要去看奥运,但是他舍不下他的玩具,于是他决定把所有的玩具运到北京。他使用自己的压缩器进行压缩,其可以将任意物品变成一堆,再放到一种特殊的一维容器中。P教授有编号为1…N的N件玩具,第i件玩具经过压缩后变成一维长度为Ci.为了方便整理,P教授要求在一个一维容器中的

2017-02-08 12:03:56 219

原创 codeforces#395

A:题意:没a分钟来个人,每b分钟一个liza打电话,在c时间内,最少多少个人不能来使得没人接liza电话tip:暴力#include <iostream>#include <cstdio>#include <algorithm>#include <cstring>using namespace std;int a[10010];void init(){ int n,m,p,cn

2017-02-08 10:56:30 240

原创 codeforces #394

A题意:上台阶奇数和偶数分别多少可以实现是从a到b连着上的(a>=1)tip:0,0不可以,至少上了一节#include <iostream>#include <cstdio>#include <cstring>#include <algorithm>using namespace std;void init(){ int a,b; scanf("%d%d",&a,&b);

2017-02-08 10:31:50 239

原创 BZOJ 4761

dp+最短路首先考虑了dfs,但不能处理要求的头朝哪个方向的问题。然后考虑dp dp[x1][y1][x2][y2][d1][d2]表示第一个人(初始头朝上)在x1,y2位置 头的朝向是d1,第二个人(初始头朝右)在x2,y2位置,头朝向是d2的时候 最少需要多少步dp就是dis,因为每个状态之间的转移都是单位长度,spfa求最短路就是最少步数。有几种转移: 1.d1,d2不变,朝着现在方向走一步

2017-02-08 10:06:22 417

原创 POJ3348-凸包

题意:一片草地上有n课树,现在你想用绳子圈出一个尽可能大的面积出来养牛。已知每只牛需要50单位的面积,问最多能养几只牛。#include <iostream>#include <cstdio>#include <algorithm>#include <cstring>#include <cmath>using namespace std;int n,stack[10010],top;c

2017-02-05 07:05:57 281

原创 poj1039 计算几何-交点,叉积

http://poj.org/problem?id=1039 题意:给出一个曲折的管道,求出光线能够到达的管道的最远点的横坐标。 思路:能够到达最远点的直线必然通过管道的一个上管道壁的折点和一个下管道壁的折点,枚举所有的这样的折点,求出最远能够到达的地方的横坐标。#include <iostream>#include <cstdio>#include <algorithm>#include

2017-02-04 21:41:04 226

空空如也

空空如也

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

TA关注的人

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