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
GDOI2016
JZOJ.4465[
GDOI2016
模拟4.22] 飞机调度 解题报告
飞机调度题目描述作为一个旅行达人以及航空公司的金卡会员,你每一年的飞行里程可以绕赤道几周了。你发现,航空公司为了提高飞机的使用率,并不是简单的一条航线使用一架飞机来回飞,而是会让同一架飞机连续不停地飞不同的航线,甚至有的时候为了能够完成飞机的调度,航空公司还会增开一些临时航线——在飞机转场的同时顺路捎一些乘客。你研究了一下GDOI著名航空公司GDAirways的常规直飞航线,你想知道,在最佳调度方
XianHaoMing
·
2016-04-27 20:00
解题报告
匈牙利算法
飞机调度
JZOJ4465
【
GDOI2016
模拟4.23】轻重路径
Description树链剖分都会吧?维护一个二叉树的链剖,若size()相同选左子树。每次删除一个叶子节点,若出现size()相等保持原有的剖法。每次询问所有重边所指向的点的编号和。n #include #include #definefo(i,a,b)for(inti=a;isize[l[x]])son[x]=r[x];elseson[x]=l[x]; } voidmake(intx,inty
alan_cty
·
2016-04-26 19:00
树链剖分
GDOI2016模拟
轻重路径
4-23
【
GDOI2016
模拟4.23】数字方阵
Description有一个无限大的矩阵A,满足A[i,1]=i,A[i,j]=A[i,j-1]+rev(a[i,j-1])求这个矩阵中,在区间a~b中间的数的数量。多组询问。Type #include #include #definefo(i,a,b)for(inti=a;i=b;i--) #defineN6400005 usingnamespacestd; typedeflonglongll;
alan_cty
·
2016-04-26 19:00
数字方阵
GDOI2016模拟
4-23
【
GDOI2016
模拟4.23】无界单词
Description学过kmp吗?一个只由a和b组成的字符串S,如果next[|S|]=0,那么这个单词就是无界的,否则就是有界的。给出n和k,求长度为n的无界单词有多少个,和其中字典序第k小的是什么。多组询问。Type=i这时的字符串已经是确定的,那么只需要用kmp(暴力)就好了。2.lenj&&leni-j这样的话中间就没有任选的了,并且我们复制的时候会和原来已经确定的部分重叠,hash判断
alan_cty
·
2016-04-26 19:00
dp
无界单词
GDOI2016模拟
4-23
【
GDOI2016
模拟4.23】飞机调度
Descriptoin给出n个机场和m个航班,第i个航班需要在di这个时间点从机场xi飞到yi。从x飞到y的时间为T[x,y],T[x,y]不一定等于T[y,x]。在第i个机场降落的飞机都需要准备pi的时间才能再次起飞。时刻0你可以在任意机场安排任意架准备好的飞机。问最少需要准备多少架飞机。n,m #include #include #definefo(i,a,b)for(inti=a;idis[
alan_cty
·
2016-04-26 19:00
GDOI2016模拟
飞机调度
4-23
【
GDOI2016
模拟4.22】无界单词
此题很神奇请看大神题解。点这里我的代码#include #include #include #include #include #definefo(i,a,b)for(inti=a;i=len)x=er[(i-2*j)]; if(len>j&&leni-j)x=hash(len,i,j); f[i]-=x*f[j]; } } returnf[n]; } voidkmp() { if(len==1)
u011056504
·
2016-04-26 18:00
dp
GDOI2016
赛前模拟4.23总结
这次比赛炸了,炸了,炸了。不爽,303机房的c++和键盘。这可是GDOI赛前最后一场模拟赛了,竟然炸了?!发现要到303做题,各种不情愿。c++编译器乱搞了15min,加上我本来就晚到了,结果心态就变得非常糟糕。8:30看题,T1……什么?!好像要Floyd,但500的3次方不会炸吗?再说,带点权的还要拆点(蒟蒻呀!)算了,先去看T2!@#¥%……根本没思路,懵逼了。T3,应该是神奇的数论题吧,推
alan_cty
·
2016-04-26 12:00
总结
GDOI2016
赛前模拟
4-23
[
GDOI2016
模拟04.25总结]
Summary这次比赛爆炸了,当然原因还有第三题交错题50分没了QwQ。第一题想出了正解,但我在想第一题怎么会是最短路加路径覆盖呢?然后就认为自己想错了,便又想了很久,最终还是打了这个。然后打的时候由于Floyd是O(n3)的,这题n达到了500,感觉会爆炸,然后就将数据范围改成了50分范围。这时时间不多了,于是便转去后三题暴力,没有检查代码。因此第一题匈牙利枚举变量打错了,还有其他一些细节错误,
a_crazy_czy
·
2016-04-25 19:00
总结
OI
GDOI2016
第一次模拟总结 4.21 ~ 4.23
前言又到了一年一度的GDOI,为了更好的迎接比赛,一轮一轮的模拟赛又来了。比赛过程Day1第一天,为了模拟正式的环境,到了一个新机房做题。第一道题一看完就挺有想法的,觉得根据函数的性质可以用单调队列维护一下。第二题乍一看还以为是字符串,可是仔细想想,其实只是一题披着字符串外表的DP,而且根据题目要求似乎还要套个矩阵乘法什么的。在草稿纸上推了一下,讨论的情况很繁琐,就先看下一题了。第三题看完,第一感
YxuanwKeith
·
2016-04-23 22:00
GDOI2016
第一次终极模拟总结
感觉发挥的还算平稳,但每天都有分数没有搞到,不能做到分分必拿,还是比较亏的。Day1一开始看题,第一题一看题就开始推公式,发现要维护个凸壳,还要维护前后凸壳,看起来非常地奇怪,再看第二题,看数据范围都知道要矩阵乘法,推了一下状态发现比较简单,然后看第三题,画风比较奇怪,应该要求一个欧几里德最小生成树,然后模拟一下,但不会求,最后一题不怎么懂,只会没有障碍的20分做法。看完题想了一会儿大概过了1个钟
PhilipsWeng
·
2016-04-23 22:00
【
GDOI2016
模拟4.22】总结
距离GDOI还有一周,最后一次模拟赛。由于是最后一次模拟赛,老师让我们分开坐而且在隔壁教室,那个电脑配置和编译器很神奇,用起来不顺手。于是就挂了。T1飞机调度题目大意:有N个机场,M条航线。每条航线有起点终点和时间。一个飞机飞完一个航线可以到另一条航线的起点去飞下一条航线。求最少要多少飞机。N,M<=500刚开始有点懵。以为是DP,于是推方程推了十分钟,没推出来。接着想到应该是网络流,仔细思考发现
u011056504
·
2016-04-23 17:00
【
GDOI2016
模拟4.22】飞机调度
Description作为一个旅行达人以及航空公司的金卡会员,你每一年的飞行里程可以绕赤道几周了。你发现,航空公司为了提高飞机的使用率,并不是简单的一条航线使用一架飞机来回飞,而是会让同一架飞机连续不停地飞不同的航线,甚至有的时候为了能够完成飞机的调度,航空公司还会增开一些临时航线——在飞机转场的同时顺路捎一些乘客。你研究了一下GDOI著名航空公司GDAirways的常规直飞航线,你想知道,在最佳
u011056504
·
2016-04-23 16:00
GDOI2016
模拟4.22 无界单词 字符串上的动态规划
题目大意给定一个N和K,问所有长度为L的仅包含字符a,b的单词中有多少个无界单词,以及字典序第K的无界单词是什么?有界单词:对于一个单词S,如果存在一个长度L,满足0i2时,肯定存在一个更小的L使之满足要求,所以就只需考虑小于等于i2的L。考虑最小的L时我们可以直接把之前统计出的长度小于i2的无界单词复制一遍放在头和尾,中间剩下字符任选,这样就可以推出Fi。总的来说就可以写出递推式Fi=2i−∑i
YxuanwKeith
·
2016-04-22 20:00
JZOJ.4377[
GDOI2016
模拟3.10]习用之语 解题报告
习用之语题目大意给出N个长度为4的字符串,求出仅差D个字符的字符串的对数。输入格式第一行两个正整数N,D。接下来N行,每行一个长度为4的字符串。输出格式一行,一个整数,为仅差D个字符的字符串的对数。样例输入420000a0100202a0e2样例输出3样例解释一共三对。第一对:0000,a010第二对:a010,a0e2第三对:0202,0000故输出3。数据范围题解15分算法做一次N2的两两匹配
XianHaoMing
·
2016-04-21 14:00
容斥原理
习用之语解题报告
JZOJ-4377
【
GDOI2016
模拟3.10】习用之语
题意给定N个长度均为四的字符串,问他们恰好有K个字母不同的字符串有多少对(相同位置),其中字符集为0~9,a~z.n≤50000分析十分显然一道题目,暴力N2嘛,优化起来很快。我们考虑一种情况:有L个字符相同——注意并不是恰好——枚举其中不同的位置为P1...PL。这样的话求有多少对就很方便了,这是谁都能想到的方法,随便用点算法把原来所有字符串分成若干块(比如排序~~~),每块里的字符串都有指定位
ZLTJohn
·
2016-04-20 19:00
【
GDOI2016
模拟3.10】习用之语
Description有N个长度为4的字符串,求着N个字符串中有多少对差且仅相差d个字符。N #include #include #include #definefo(i,a,b)for(inti=a;i=b;i--) #definelllonglong #defineN50005 #defineP37 usingnamespacestd; maph[16]; llf[5],g[5]; intc[
alan_cty
·
2016-04-18 19:00
String
容斥原理
GDOI2016模拟
习用之语
【
GDOI2016
模拟3.9】暴走的图灵机
题目描述l=’0’,r=’1’。每次操作把r变成l+r,把l变成r。求n次操作后,l中子串T的数量modP输入第一行n,m,t,p。m为T的长度。第二行为T输出答案modp样例输入73100101样例输出8数据范围N=M,a1就是当前l中T的个数,a2就是r中T的个数。C1就是l的后M-1位与r的前M-1位合并后得到的串中T的数量。C2就是l的前M-1位与r的后M-1位合并后得到的串中T的数量。接
u011056504
·
2016-04-15 20:00
KMP
矩阵乘法
JZOJ 4376【
GDOI2016
模拟3.9】染色配对
DescriptionAnalysis由于题目的特性,我们把极大团看成点,把点看成边。然后会形成多个连通块。对于每个连通块,若其中有m条边,则一定能匹配⌊m2⌋次。因为一次匹配要两条边。所以第一行直接算出每个连通块内的边数就好了。关键是要找到一个可行的算法来达到最优匹配。然后我们可以发现,目标等价于最大化入度为偶数的点数。而无向边确定一个方向,等价于点放入两个极大团之一。那么搜索整个图,一开始所有
lyd_7_29
·
2016-04-15 19:00
贪心
【
GDOI2016
模拟3.9】暴走的图灵机
Descriptionsolution显然,这是一个像斐波拉契数列的东西,问题变成了求这个序列操作(n-1)次后与T的最大匹配,KMP自己学当我们“左手右手一个慢动作”搞出两个长度大于m的串(设为A串和B串),这是我们来模拟一下A,B串之后的变化:ABABBABABBABBABABBAB…….我们又发现:因为A,B串的长度是大于m的,现在只有5总情况了:1.T串只存在于A串中;2.T串只存在于B串
HOWARLI
·
2016-04-14 18:00
字符串
KMP
矩阵乘法
斐波拉契数列
GDOI2016
模拟3.15 圈地游戏 暴力图论
题目大意给定一个N∗M的棋盘,棋盘上有障碍,陷阱和宝藏,每个宝藏都有一个权值。现在要求从起始位置用折线围出一个合法的多边形,其内部不能含有陷阱,并且不能经过障碍,而得到的收益为其围住的宝藏权值之和减去多边形的周长。现在要求输出最大的收益。(“B”为陷阱,”#”为障碍,数字为宝藏,“.”为空地,”S”为起始位置)宝藏加陷阱的数量≤8N,M≤20注:题目已经给出判断一个点是否在一个·多边形内的方法,为
YxuanwKeith
·
2016-04-14 17:00
【
GDOI2016
模拟3.9】暴走的图灵机
题目分析我们发现当两个字符串合并时,a0、a1表示左右两个字符串中有多少个T,C表示合并处新增的T的个数,那么a0=a1a1=a0+a1+C令s0和s1表示左右手两个字符串,那么每一次操作后左右手字符串分别为:操作次数左手右手 0s0s1 1s1s0s1 2s0s1s1s0s1 3s1s0s1s0s1s1s0s1 4s0s1s1s0s1s1s0s1s0s1s1s0s1 5s1s0s1s0s1s1s
无尽的蓝黄
·
2016-04-13 00:00
题解
矩阵乘法
字符串
【
GDOI2016
模拟3.9】染色配对
Description给出n个点,且这n个点形成了m个极大团(团里面互相有边相连,且极大团不被其他团包含),每个点都属于且仅属于两个极大团。求这张图的极大匹配数和方案。m #include #include #definefo(i,a,b)for(inti=a;i<=b;i++) #definerep(i,a)for(inti=last[a];i;i=next[i]) #defineN200005
alan_cty
·
2016-04-11 19:00
图论
DFS
GDOI2016模拟
染色配对
【
GDOI2016
模拟3.9】奇妙的数列
Description给出一个长度为n的数列b,求另一个长度为n的数列a中的最大值。其中,ai=i-k+1,k是最小的满足对于k #include #include #include #definefo(i,a,b)for(inti=a;i=b;i--) #defineN10000005 usingnamespacestd; inta[N],b[N],c[N],d[N],n,ans; intrea
alan_cty
·
2016-04-11 19:00
单调栈
数列
GDOI2016模拟
奇妙的数列
【
GDOI2016
模拟3.9】暴走的图灵机
Description现在你有两个字符串,l=’0’,r=’1’。每一次操作是把l=r,r=l’+r。l’表示操作前的l。求n次操作后,所得的l中含有多少个模式串S,个数%p。n=2*m-2的时候,C就会出现长度为2的循环节。(自己想想为什么)那么,我们可以暴力到出现两个长度>=2*m-2的串。然后用矩阵乘法优化。至于转移矩阵,最好开4*4的。(3*3蒟蒻表示不会打)Code#include #i
alan_cty
·
2016-04-11 19:00
KMP
斐波那契数列
矩阵乘法
GDOI2016模拟
暴走的图灵机
【
GDOI2016
模拟3.9】暴走的图灵机
题目大意初始给定两个字符串”0”,”1”,每次操作将前两个串连接作为新串。求N次操作后的字符串中所包含给定字符串T的个数,答案对P取模。M为字符串T的长度。DataConstraint对于30%的数据,N≤20对于100%的数据,N≤109,M≤104,P≤109题解可以发现,前30%可以直接暴力处理。设f[n]表示第n个字符串中T的个数。易得,f[n]=f[n−1]+f[n−2]+C其中C表示串
Akakii
·
2016-04-11 11:43
矩阵乘法
GDOI2016
模拟3.9 暴走的图灵机 矩阵乘法优化暴力
题目大意给你两个字符串l,r,初始时l=′0′,r=′1′,然后我们有N轮操作,每轮操作把r变成原来的l加上原来r(即连接上),把l变成原来的r。给一个长度为M的01串s,问操作完后的l串包含多少个s,答案对p取模。N≤109 M≤104 0 #include #include usingnamespacestd; typedeflonglongLL; constintMAXS=1
YxuanwKeith
·
2016-04-09 22:00
GDOI2016
模拟4.9 总结
这次真可惜,差点就上榜了···唉,一时改不过落榜的习惯。这是一套质量不错的题目,很好地考察了思维能力。先打第二题,我消耗了不少时间,主要是思维不太清楚,打起来很怕有错,感觉在碰运气。虽然第二题最终是打出来了,可是有少许鬼畜数据能卡我的程序,有bug!!!但是还是水过了···感觉上我的验证能力还是不强啊,这个真的重要。然后去打第一题,呵呵呵了,早读做了奇怪的数学测试,晚了18分钟,结果结束后16分钟
ZLTJohn
·
2016-04-09 16:00
【
GDOI2016
模拟3.20】diyiti
题意给定一列数a[N]有两种操作,共M个:0xval把a[x]的值改成val;1lrk在l~r区间里选定不超过K个不相交的子段,即选定不超过k个独立区间,使他们加起来的权值最大。当然可以不选。1 #include #include #definefo(i,j,k)for(i=j;i=k;i--) usingnamespacestd; constintN=100005; constintrev=10
ZLTJohn
·
2016-03-29 20:00
数据结构
GDOI'2016市选day1 —— 组题(pro)
【题目描述】
GDOI2016
将于4月30日至5月3日在四会中学举行,为了准备这次比赛,评委们正忙着出题。题目难度分为“简单题”、“中等题”、“难题”三个等级。
gotojava9
·
2016-03-27 13:00
二分
GDOI
【
GDOI2016
模拟7.10】Banner
Description给定一个网格,左下角为(0,0),右上角为(n,m),求有多少种方案可以选择两个整点点,使得这两个点的连线不经过其他整点并且长度在l~r之间。答案对p取模。n,m #include #include #definefo(i,a,b)for(lli=a;ix)continue; ans=(ans+bz*(((m+1)*(x/k)%p-k*sum(x/k)%p)+p)%p+p)%
alan_cty
·
2016-03-25 20:00
gcd
banner
容斥原理
GDOI2016
bzoj3638&&【
GDOI2016
模拟3.20】diyiti
Description给出一个长度为n的序列,a1~an,和m次操作,每次操作分为0xval,将ax变成val1lrk,询问在区间l~r中,最多k个不重合区间的最大和是多少。n,m #include #include #definefo(i,a,b)for(inti=a;im)returnfind(v*2+1,m+1,r,x,y); elsereturnmerge(find(v*2,l,m,x,m
alan_cty
·
2016-03-23 21:00
线段树
网络流
bzoj3638
GDOI2016模拟
diyiti
[置顶] 一直更新中
计划写的题目【GDOI模拟】Game【
GDOI2016
模拟3.20】dierti&&
alan_cty
·
2016-03-23 21:00
反思
曹天佑
一直更新中
GDOI2016
模拟3.5总结
做题过程看题,发现都很好想出大致的思路。T1费用流,T2sa+线段树,T3搜索。先打了T1的费用流,打完、对拍、测大数据,发现没什么问题,就去看T2。T2也很快打完、对拍、测大数据,没什么问题。T3打暴力,加上状压优化,测了样例和一些手工数据,跑得很快,也没什么错,就没管了。这时11:00,回头看T1,发现我出的数据不好,没有比较平均地分配流量。然后我改了一下makedata,再测大数据,竟然要2
lzxzxx
·
2016-03-05 22:00
上一页
1
2
下一页
按字母分类:
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
其他