E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
AHOI
1798: [
Ahoi
2009]Seq 维护序列seq 线段树
注意标记的优先级问题。#include #include #definelllonglong #defineN100005 usingnamespacestd; intn,m,P; inta[N]; intl[N'9'){if(c=='-')f=-1;c=getchar();} while(c>='0'&&c>1; build(k>1; if(ymid)change(k>1; if(ymid)re
Phenix_2015
·
2016-02-25 09:00
【bzoj1266】[
AHOI
2006]上学路线route 最小割+floyd
不难。最小割点1到点n的所有最短路全都不连通先floyd建出最短路图最短路图如果边(i,j),满足f[1][i]+t+f[j][n]=f[1][n],则其在最短路图上对于最短路图上的每一条边,对应连一条容量为c的边建边写错了!!!幸好及时发现,不然还又是一上午。#include #include #include #include #include #include #definemaxn510
u012288458
·
2016-02-23 10:00
BZOJ 3236: [
Ahoi
2013]作业|莫队算法|树状数组
这个题显然是需要二维的做法先用莫队离线对询问排序后维护两个树状数组,记录两个询问的答案,对于第二个询问,可以再开一个数组,记录每个数出现的次数#include #include #include #include #include #include #include #include #include #include #definelowbit(x)(x&(-x)) #defineN100010
ws_yzy
·
2016-02-17 15:00
树状数组
莫队算法
BZOJ 3233: [
Ahoi
2013]找硬币( dp )
dp(x)表示最大面值为x时需要的最少硬币数.枚举x的质因数p, dp(x)=min(dp(x/p)-(p-1)*sigma[a[i]/x]). ----------------------------------------------------------------------------------#include#include#include usingnamespacestd; c
JSZX11556
·
2016-02-16 22:00
[BZOJ2823][
AHOI
2012]信号塔
[
AHOI
2012]信号塔Description在野外训练中,为了确保每位参加集训的成员安全,实时的掌握和收集周边环境和队员信息非常重要,集训队采用的方式是在训练所在地散布N个小型传感器来收集并传递信息
hbhcy98
·
2016-02-16 20:00
计算几何
【BZOJ1968】【
AHoi
2005】COMMON约数研究
DescriptionInput只有一行一个整数N(0 2#include 3usingnamespacestd; 4intmain() 5{ 6intn,ans=0; 7scanf("%d",&n); 8for(inti=1;i<=n;i++)ans+=n/i; 9printf("%d\n",ans); 10return0; 11}ViewCode
DMoon
·
2016-02-16 19:00
C++之路进阶——最小费用最大流(支线剧情)
3876:[
Ahoi
2014]支线剧情TimeLimit: 10Sec MemoryLimit: 25
hyxzc
·
2016-02-15 21:00
[bzoj3233] [
Ahoi
2013]找硬币
一开始没什么思路...后来想到确定最大硬币面值就知道其他面值能取多少了。。而且结果是可以由较小的面值转移过来的。f[i]表示最大面值为i时的最小硬币数。a[i]表示第i个物品的价钱。f[i]=min{f[i/j]-sum{a[i]/(i/j)-a[i]/i }}=min{f[i/j]-sum{a[i]/i*(j-1)}},(j是i的因数)然后又因为显然,在符合条件的情况下面值种类越多越好(至少不会
czllgzmzl
·
2016-02-15 17:00
【BZOJ 1798】 [
Ahoi
2009]Seq 维护序列seq
Description老师交给小可可一个维护数列的任务,现在小可可希望你来帮他完成。有长为N的数列,不妨设为a1,a2,…,aN。有如下三种操作形式:(1)把数列中的一段数全部乘一个值;(2)把数列中的一段数全部加一个值;(3)询问数列中的一段数的和,由于答案可能很大,你只需输出这个数模P的值。Input第一行两个整数N和P(1≤P≤1000000000)。第二行含有N个非负整数,从左到右依次为a
抬头仰望浮云飘过
·
2016-02-15 07:00
【 bzoj 1797 】[
Ahoi
2009]Mincut 最小割 - 经典题
这个题就是要求一条边在最小割里面的充分条件和必要条件。首先考虑第一问,也即求充分条件。我们先对这个图进行最大流算法得到任意一个最小割。设这个时候的残量网络为Gf。那么Gf中的点集可以显然地被分成了三部分,一部分是源s可以到达的,一部分是可以到达t的,剩下的独立成一部分。可以证明,第一类点一定会被归为最小割中的S集,第二类点一定会被归为T集,第三类点两个集合均有可能。显然割边联接着的一定是S集点和T
GEOTCBRL
·
2016-02-14 19:33
网络流
最小割
强联通分量
【 bzoj 1797 】[
Ahoi
2009]Mincut 最小割 - 经典题
这个题就是要求一条边在最小割里面的充分条件和必要条件。首先考虑第一问,也即求充分条件。我们先对这个图进行最大流算法得到任意一个最小割。设这个时候的残量网络为Gf。那么Gf中的点集可以显然地被分成了三部分,一部分是源s可以到达的,一部分是可以到达t的,剩下的独立成一部分。可以证明,第一类点一定会被归为最小割中的S集,第二类点一定会被归为T集,第三类点两个集合均有可能。显然割边联接着的一定是S集点和T
GEOTCBRL
·
2016-02-14 19:00
bzoj1831【
AHOI
2008】逆序对
1831:[
AHOI
2008]逆序对TimeLimit: 10Sec MemoryLimit: 64MBSubmit: 485 Solved: 341[Submit][Status][Discuss
AaronGZK
·
2016-02-13 12:00
dp
bzoj
bzoj1965: [
Ahoi
2005]SHUFFLE 洗牌
链接:http://www.lydsy.com/JudgeOnline/problem.php?id=1965题意:中文题。。。分析:一个置换的题。。我们对样例进行简单的分析可知经过一次变换有(1->2,2->4,3->6,4->1,5->3,6->5),然后我们就能发现p[a]=a*2%(n+1)。。然后我们设答案为X即X=p[l],所以有X*(2^m)=l%(n+1)并且2模n+1的逆元为n/
Fsss_7
·
2016-02-10 01:00
bzoj1968【
AHOI
2005】COMMON 约数研究
1968:[
Ahoi
2005]COMMON约数研究TimeLimit: 1Sec MemoryLimit: 64MBSubmit: 1492 Solved: 1139[Submit][Status]
AaronGZK
·
2016-02-09 22:00
bzoj
BZOJ 3875: [
Ahoi
2014]骑士游戏
d[i]表示消灭i所需的最小体力值,d[i]=min(S[i],K[i]+Σd[x]),Σd[x]表示普通攻击而产生的其他怪兽.因为不是DAG,所以用个队列类似SPFA来更新答案.--------------------------------------#include#include#includeusingnamespacestd;typedeflonglongll;constintmax
JSZX11556
·
2016-02-03 14:00
BZOJ 3875: [
Ahoi
2014]骑士游戏
d[i]表示消灭i所需的最小体力值,d[i]=min(S[i],K[i]+Σd[x]),Σd[x]表示普通攻击而产生的其他怪兽.因为不是DAG,所以用个队列类似SPFA来更新答案.--------------------------------------#include#include#includeusingnamespacestd;typedeflonglongll;constintmax
JSZX11556
·
2016-02-03 14:00
BZOJ 1969: [
Ahoi
2005]LANE 航线规划( 树链剖分 )
首先我们要时光倒流,倒着做,变成加边操作维护关键边.先随意搞出一颗树,树上每条边都是关键边(因为是树,去掉就不连通了)....然后加边(u,v)时,路径(u,v)上的所有边都变成非关键边了,因为形成了环,环上任意2点有2条路径。。。下图,加上蓝色的边,红色x的边就变成了非关键边. 所以树链剖分维护一下...时间复杂度O(NlogN+MlogM+Qlog^2N),可以AC.翻了翻ZY的标解:“动态
JSZX11556
·
2016-02-01 22:00
3236: [
Ahoi
2013]作业
3236:[
Ahoi
2013]作业TimeLimit: 100Sec MemoryLimit: 512MBSubmit: 1009 Solved: 387[Submit][Status][Discuss
CRZbulabula
·
2016-02-01 19:00
spring+quartz两种整合方式:代码创建job和xml配置创建job
顺畅无笔,感谢无私奉献http://my.oschina.net/
ahoi
/blog/604425非常有用的quartz分析http://blog.itpub.net/11627468/cid-177622
举起希望之灯
·
2016-01-31 21:00
BZOJ 1967 [
Ahoi
2005]CROSS 穿越磁场
啊。。比较水的一题。先离散化,然后直接跑一遍最短路就可以了。注意它可以从离散化后的边缘走。。因此要处理一下边缘(可以看我代码,代码中用注释标注了)。。因为这个WA了一发 #include #include #include #include usingnamespacestd; constsize_tMax_N(105); typedefpairpil; constint
Created_equal
·
2016-01-24 17:00
BZOJ 1967 [
Ahoi
2005]CROSS 穿越磁场
啊。。比较水的一题。先离散化,然后直接跑一遍最短路就可以了。注意它可以从离散化后的边缘走。。因此要处理一下边缘(可以看我代码,代码中用注释标注了)。。因为这个WA了一发 #include #include #include #include usingnamespacestd; constsize_tMax_N(105); typedefpairpil; constint
Created_equal
·
2016-01-24 17:00
【BZOJ1798】【
Ahoi
2009】Seq 维护序列(线段树)
链接:http://www.lydsy.com/JudgeOnline/problem.php?id=1798唔这是好久好久以前写不出的题了QAQ,就是一个线段树水题qvq1#include 2#include 3#include 4#include 5#include 6#defineMaxN100010 7#defineMaxM200010 8#defineLLlonglong
Lukaluka
·
2016-01-22 20:00
BZOJ 3233: [
Ahoi
2013]找硬币|动态规划
F[i]表示最大的钢镚为i时需要的最少数量F[i]显然要由i的因子j,F[j]转移过来转移方程:F[i]=min(F[j]−∑⌊a[k]/i⌋∗(i/j−1)这样复杂度还有点高会T有一个优化就是枚举j的时候有一些是可以忽略的只需要枚举i/p(p为i的质因子)否则肯定不是最优的随便画画就知道为什么了#include #include #include #include #include #inclu
ws_yzy
·
2016-01-19 19:00
动态规划
【LCA】BZOJ1832 & BZOJ1787(
AHOI
)-集会
【题目大意】一个图有n个点n-1条边(也就是说是一棵树),求其中三点共同到达某一点经过总共的最少边数以及共同到达的那一点。【思路】借用一下黄学长给的结论:三个点两两取LCA,其中必有两个相同,则另外一个点就是答案。注意BZOJ大数据要用scanf和printf,因为cout的原因RE了好几次_(:зゝ∠)_基本算是一道标程类的题目了啦。1#include 2#include 3#include
GufuVelvirki
·
2016-01-17 22:00
BZOJ 1264: [
AHOI
2006]基因匹配Match|动态规划
朴素的动规是n方的数据范围有点大考虑一下转移的时候 a[i]==b[j]开个数组把这与相等的5个数的位置存下来然后用树状数组维护各max{前缀}就ok了话说为什么最近总是犯一些傻逼的错误………………#include #include #include #include #include #include #include #include #include #include #defineT200
ws_yzy
·
2016-01-13 11:00
动态规划
Spaly选讲……哦不,Splay
首先谈谈比较友善的NOI2004Plus:
AHOI
文本编辑器。
心若为城
·
2016-01-11 18:25
数据结构
Spaly选讲……哦不,Splay
首先谈谈比较友善的NOI2004Plus:
AHOI
文本编辑器。
zxn0803
·
2016-01-11 18:00
3238: [
Ahoi
2013]差异 后缀数组+分治+乘法原理
首先后缀数组似乎就不是正确的姿势?然后写了后缀数组不写单调栈好像更不是正确的姿势?反正我是暴力水过了。。st表预处理出最小值点,每次寻找最小值点然后乘法原理计算两边的乘积。再对左右区间分别处理。6s妥妥水过。卧槽我后缀数组居然写错了。。调了一早晨都以为是分治写错。。果然不能对自己的后缀数组太自信QAQ。#include #defineinf1000000007 #definelllonglong
Phenix_2015
·
2016-01-11 08:00
BZOJ 3238: [
Ahoi
2013]差异|后缀数组|乘法原理
后缀数组貌似不是这个题正确的姿势不过也可以做自己yy的做法用set水过了不过看起来并不是很慢原题中的式子等价于所有后缀的长度之和*[length(s)-1] 减去 任意两个后缀的lcp长度任意两个后缀的lcp长度可以直接光看height数组先想n^2暴力的做法求出所有sa[i]和sa[j](i #include #include #include #include #include #includ
ws_yzy
·
2016-01-10 20:00
后缀数组
乘法原理
【BZOJ 1798】[
Ahoi
2009]Seq 维护序列seq
乘法和加法可以都保留加个小处理!#include #include #include #defineMAXN100000 #defineLLlonglong LLa[MAXN*4],c[MAXN*4],j[MAXN*4],num[MAXN*4]; LLn,p,m; voidBuild(intnow,intL,intR) { c[now]=1; if(L==R){a[now]=num[L];retu
sxb_201
·
2016-01-09 10:00
【bzoj1798】[
Ahoi
2009]Seq 维护序列seq 线段树
Description老师交给小可可一个维护数列的任务,现在小可可希望你来帮他完成。有长为N的数列,不妨设为a1,a2,…,aN。有如下三种操作形式:(1)把数列中的一段数全部乘一个值;(2)把数列中的一段数全部加一个值;(3)询问数列中的一段数的和,由于答案可能很大,你只需输出这个数模P的值。Input第一行两个整数N和P(1≤P≤1000000000)。第二行含有N个非负整数,从左到右依次为a
LOI_DQS
·
2016-01-05 08:00
bzoj3876【
Ahoi
2014】支线剧情
3876:[
Ahoi
2014]支线剧情TimeLimit:10SecMemoryLimit:256MBSubmit:485Solved:297[Submit][Status][Discuss]Description
AaronPolaris
·
2015-12-27 11:45
好题
网络流
OIer的狂欢
bzoj3876[
AHOI
2014]支线剧情(有上下界的费用流)
本来只是想刷一道上下界网络流的,然而不小心做了一道上下界费用流第一次写了一遍把必经边-inf的版本,然而似乎inf的取值很神奇?反正我不行==来自湘江的分析分析:每次从剧情点1开始,用最少的时间花费,走完所有的边,每条边至少走一次,所以是下界为1的费用流。构图:先建立超级源点s(0),超级汇点t(n+1)t–>s花费为0,流量为INF对于边u–>v,花费为c,流量下界为1,上界为正无穷改成:s–>
BPM136
·
2015-12-24 21:37
网络流
bzoj3876[
AHOI
2014]支线剧情(有上下界的费用流)
本来只是想刷一道上下界网络流的,然而不小心做了一道上下界费用流第一次写了一遍把必经边-inf的版本,然而似乎inf的取值很神奇?反正我不行==来自湘江的分析分析:每次从剧情点1开始,用最少的时间花费,走完所有的边,每条边至少走一次,所以是下界为1的费用流。 构图: 先建立超级源点s(0),超级汇点t(n+1) t–>s花费为0,流量为INF 对于边u–>v,花费为c,流量下界为1,上界为正无穷 改
BPM136
·
2015-12-24 21:00
网络流
费用流
上下界
bzoj1266【
AHOI
2006】上学路线route
1266:[
AHOI
2006]上学路线routeTimeLimit: 3Sec MemoryLimit: 162MBSubmit: 1602 Solved: 559[Submit][Status][
AaronGZK
·
2015-12-18 23:00
最短路
网络流
bzoj
1801: [
Ahoi
2009]chess 中国象棋
终于找到一道能做的出来的DP水题了TAT。仔细想一下会发现其实每一行最多放俩炮,每一列也最多放俩炮。而且,列和列之间应该是等价的。so用f[i][j][k]表示前i行有j列放了0个炮,有k列放了1个炮,自然有m-j-k列放了两个炮。然后压掉第1维。每一行的状态转移有三种:不放,放一个,放两个。随便搞搞就出来了。#include #include #include usingnamespacestd
nlj1999
·
2015-12-15 11:00
1797: [
Ahoi
2009]Mincut 最小割
这题还挺有意思的……呃……我的意思是,反正我不会。。。。。。。做法嘛,先求最小割是肯定的了,然后就是很坑爹的结论题。边(u,v)能出现在最小割集中当且仅当(u,v)为满流且在残量网络里u,v不属于同一个强连通分量。边(u,v)必定出现在最小割集中当且仅当(u,v)为满流且在残量网络中u与s在同一强连通分量且v与t在同一强连通分量。证明什么的,画个图试试?#include #include #inc
nlj1999
·
2015-12-15 09:00
AHOI
基因匹配 dp LCS LIS
Description基因匹配(match)卡卡昨天晚上做梦梦见他和可可来到了另外一个星球,这个星球上生物的DNA序列由无数种碱基排列而成(地球上只有4种),而更奇怪的是,组成DNA序列的每一种碱基在该序列中正好出现5次!这样如果一个DNA序列有N种不同的碱基构成,那么它的长度一定是5N。卡卡醒来后向可可叙述了这个奇怪的梦,而可可这些日子正在研究生物信息学中的基因匹配问题,于是他决定为这个奇怪星球
qq_32451161
·
2015-12-08 12:00
dp
应用
Lis-Lcs
[BZOJ1800] [
Ahoi
2009]fly 飞行棋
传送门http://www.lydsy.com/JudgeOnline/problem.php?id=1800题目大意。。。题解求出直径数,ans=直径数∗(直径数−1)2var x:array[0..100]oflongint; i,j,k,n,m,ans,sum:longint; begin readln(n);x[1]:=0;sum:=0; fori:=2tondo begin readln
slongle_amazing
·
2015-12-07 16:00
【bzoj3238】[
Ahoi
2013]差异 后缀数组+单调栈
首先求出height数组,原式很明显可以化成一堆长度的和-两两LCP的和,所以我们考虑每个height能充当多少个区间的最小值即可,那么这个问题可以用单调栈解决,从左和从右各维护一个单调递增的单调栈,求出点i向左和向右分别最多能延伸多长。注意:1.height数组的[i,i]是要计入区间数的,因为我们查询lcp(i,j)的时候查询的是height数组中rank[i]+1~rank[j]的最小值,所
u012288458
·
2015-12-06 19:00
bzoj2823[
AHOI
2012]信号塔
随机增量法求最小覆盖圆,主要就是圆心坐标神烦,后来看到了ACdreamer的一个简洁版本,虽然还没明白是为什么但是比窝那个短多了#include #include #include #include #include #include #include #defineLLlonglong #definefo(i,a,b)for(inti=a;i<=b;i++) usingnamespacestd;
BPM136
·
2015-12-05 11:00
计算几何
bzoj1269【
AHOI
2006】文本编辑器editor
1269:[
AHOI
2006]文本编辑器editorTimeLimit: 10Sec MemoryLimit: 162MBSubmit: 2678 Solved: 996[Submit][Status
AaronGZK
·
2015-12-04 22:00
bzoj
Bzoj1798
AHOI
2009 维护序列 线段树模版
题意:维护一个序列,支持区间同加或同乘一个数、询问区间和。(x+d)*c=x*c+d*c标记就是这样处理的,剩下的就是注意到处取模了。#include #include #include #defineLLlonglong usingnamespacestd; constintmaxn=100010; structnode{ intL,R; LLsum; LLplu,mul; }tree[maxn
Elemmir
·
2015-12-01 18:00
线段树
[BZOJ1787][
Ahoi
2008]Meet 紧急集合&&[BZOJ1832][
AHOI
2008]聚会
传送门http://www.lydsy.com/JudgeOnline/problem.php?id=1787http://www.lydsy.com/JudgeOnline/problem.php?id=1832题目大意给定一棵树,每次询问3个点到某一点的最小距离和题解3个点,其实任意两点间有lca,而且最多有3个不同lca(事实上最多是2个),这样的话3种情况比大小即可事实是:3个点两两lca
slongle_amazing
·
2015-11-27 20:00
AHOI
1997彩旗飘飘 VIJOS1097合并果子(noip2007)
AHOI
彩旗飘飘 这是一题类似于排列组合的题目吧...递推状态 数组f[100][100][100][2];表示红旗数目,黄旗数目,颜色改变的次数,末尾的旗的颜色(0为黄,1为红)
·
2015-11-13 22:00
2007
7、8月刷题总结
数据结构: splay: 【BZOJ】1503: [NOI2004]郁闷的出纳员(Splay) 【BZOJ】1269: [
AHOI
2006]文本编辑器editor
·
2015-11-13 11:20
总结
【BZOJ】1269: [
AHOI
2006]文本编辑器editor(Splay)
http://www.lydsy.com/JudgeOnline/problem.php?id=1269 这题RE2次啊,好不爽啊,我一直以为是splay的问题,其实是数组开小了。。。。。。(我老犯这种低级错啊喂。。 和1507一样是模板题,指针版的速度依旧不行,,,,太慢了。 #include <string> #include <cstdio> #inc
·
2015-11-13 11:48
editor
【BZOJ】1406: [
AHOI
2007]密码箱
http://www.lydsy.com/JudgeOnline/problem.php?id=1406 题意:求$0<=x<n, 1<=n<=2,000,000,000, 且x^2 \equiv 1 \pmod{n}$的所有$x$ #include <bits/stdc++.h> using namespace std; typedef long l
·
2015-11-13 11:04
2007
【BZOJ】1798: [
Ahoi
2009]Seq 维护序列seq(线段树)
http://www.lydsy.com/JudgeOnline/problem.php?id=1798 之前写了个快速乘。。。。。。。。。。。。。。。。。。。。。。。。。。20多s。。。。。。 还好1a。。 那么本题就是维护两个tag即可。和上一题一样。 #include <cstdio> #include <cstring> #include <cm
·
2015-11-13 11:08
线段树
BZOJ 1787 紧急集合
1787: [
Ahoi
2008]Meet 紧急集合 Time Limit: 20 Sec Memory Limit: 162 MB Submit
·
2015-11-13 03:20
ZOJ
上一页
3
4
5
6
7
8
9
10
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他