GDOI2015 解题报告
首先嘛现在发现题目这么水我还啥都没想出来正是呵呵了。接下来就口胡下GDOI的题解吧
PS:代码什么的要请联系我
题目:快戳我
Day1:
T1:这个嘛,可以先找到起点所能到达的每个点然后判断该点能否到达终点,后一步可以发现如果从终点沿反向边遍历所能得到的所有点就是能到达终点的点,然后扫一下即可
在实现方面建议先把图建出来不要直接按照题意做
T2:
方法一:可以发现当做到第i个人的时候前i-2都已经覆盖,从i+2开始都未被覆盖,也就是说做到第i个人有关状态只有2^5种,然后就可以直接状态压缩dp了,发现n很大,每次的转移方程都是相同的所以我们可以用矩阵乘法优化
方法二:我们本着这个数列一定存在一个递推式的信念暴力出前10的答案,然后高斯消元就可以得到递推式,用高斯消元即可。
如何不用高斯消元呢?
设f[i]为答案,g[i]为长度为i的无法分成两块的方案,那么f[i]=sigma(f[j]*g[i-j]),写出g[i]来可发现从第4项开始就是一个常值数列了,就可以化简成递推式了
T3:
可以先把共抽到炎爆术张数作为x轴,抽到奥术智慧作为y轴,那么模型就变成了从点0,0,出发,每次向x+1或y+1走一步,求到达x=q不经过y=x-1的方案数
怎么求到达点(x,y)不经过y=x-1的方案数呢?
[JLOI]2015骗我呢!!!具体来说就是把起点对y=x-1做对称,那么从对称点到终点的方案就是经过的方案(因为所有方案按y=x-1做翻转都会经过这条直线)
T4:
裸的树链剖分即可
6B的代码有木有!!!人生打的最长的一个程序啊QAQ(k小割这种3合一的程序还只5B)OTZ写了12B的GWY
关于一些优化:我们可以直接把修改变成清零然后再加就可以少掉一堆操作了
当然有超多恶心的细节需要操作
说白了就是防AK题。。。
Day2:
因为没了防AK题就有2人AK一个快A了(OTZ石门众神)
T1:裸的广搜题,在判断方块是否能在某点上用8个int或一个unsigned longlong解决即可
T2:裸的找桥,数据很仁慈的不卡系统栈不开心
T3:听说是SA模板题,先处理出sa数组还有h数组然后枚举长度L对每块h[i]大于L的快排下序贪心拿就行了
用基数排序就能N^2了(反正我基数常数太大挂了还是sort好)
然后n sqrt(n) log n的算法忘了。。貌似是块大小小于sqrt(n)的直接排序做,大于n的二分然后干毛忘了。。。。
T4:一道初中知识题,可以看出其实题目意思就是给你一堆m维向量然后让你求点积。考虑点积具有结合律就行啦
Day3:
其实是很水的但就是没水出来。。。
T1:如果记f[i]为k=1时的答案那么f[i]=sigma(f[j]*(i-j-1)!)*c(i-1,i-j-1)+i!化简一下发现能前缀和就直接O(n)解决啦
然后K》=2可以用二项式定理拆开来干
时间复杂度O(nk^2)
T2:
方法一:可以想出O(N^3)方的简单算法,按列处理,对每一列只保留每一行中距离该列最近的点,然后每一行就对这些点进行扫描就能得到最近距离了。
怎么优化到O(N^2)呢。考虑其中两个基站A(x1,y1),B(x2,y2)可以发现对于某个x坐标,A好于b的要求是((x1^2+y1^1)-(x2^2+y2^2))/(2x1-2y1)<x 然后可以发现x递增,所以我们可以用斜率优化
这种解法还是非常神奇的,以后看到有平方操作还是得想到斜率优化的
对了我们可以直接使用桶排这样就不用排序了
方法二:其实考场上就是方法二的。。。不过SPFA写错了。。。。
其实也是水法啦,我就是打了一个最短路然后发现如果我是向8个方向拓展好像不会错。。。然后我把dijstra改成SPFA发现好像几乎只会经过一次(也就是说可能可以改成BFS?!)然后就可以解决啦,正确性求证明(考场上就是有4个人用了类似BFS的方法水过的。。)
T3:
方法一:树剖可以把。。。。
方法二:离线然后考虑按边从小到大加入到这个图中,首先有个结论:某个点所能到达的最远点一定是该联通块直径的两端点之一。那么我们用并查集维护联通性,然后记录每个联通块的直径,我们就可以直接搞啦
方法三:其实评委一开始是考在线算法的。。。
还是点剖+主席树,具体又忘了。。等想起来再补吧。。。
T4:
暴力能过。
暴力能过。。
暴力能过。。。
特么暴力Dijstra写挂了!!
最短路跟我过不去系列
好吧讲正解
该题模型可以变成去掉某条边后求两点最短路
那么我们之间上最短路,纪录最短路以及不经过最短路的第一条边的最短路。
完了。。。
总的来说题目很水,自己太弱。
滚回去刷CF了,自己语文太弱,英语不行,数学被虐,PKUSC妥妥得跪
GDOI2015 解题报告的更多相关文章
- CH Round #56 - 国庆节欢乐赛解题报告
最近CH上的比赛很多,在此会全部写出解题报告,与大家交流一下解题方法与技巧. T1 魔幻森林 描述 Cortana来到了一片魔幻森林,这片森林可以被视作一个N*M的矩阵,矩阵中的每个位置上都长着一棵树 ...
- 二模13day1解题报告
二模13day1解题报告 T1.发射站(station) N个发射站,每个发射站有高度hi,发射信号强度vi,每个发射站的信号只会被左和右第一个比他高的收到.现在求收到信号最强的发射站. 我用了时间复 ...
- BZOJ 1051 最受欢迎的牛 解题报告
题目直接摆在这里! 1051: [HAOI2006]受欢迎的牛 Time Limit: 10 Sec Memory Limit: 162 MBSubmit: 4438 Solved: 2353[S ...
- 习题:codevs 2822 爱在心中 解题报告
这次的解题报告是有关tarjan算法的一道思维量比较大的题目(真的是原创文章,希望管理员不要再把文章移出首页). 这道题蒟蒻以前做过,但是今天由于要复习tarjan算法,于是就看到codevs分类强联 ...
- 习题:codevs 1035 火车停留解题报告
本蒟蒻又来写解题报告了.这次的题目是codevs 1035 火车停留. 题目大意就是给m个火车的到达时间.停留时间和车载货物的价值,车站有n个车道,而火车停留一次车站就会从车载货物价值中获得1%的利润 ...
- 习题: codevs 2492 上帝造题的七分钟2 解题报告
这道题是受到大犇MagHSK的启发我才得以想出来的,蒟蒻觉得自己的代码跟MagHSK大犇的代码完全比不上,所以这里蒟蒻就套用了MagHSK大犇的代码(大家可以关注下我的博客,友情链接就是大犇MagHS ...
- 习题:codevs 1519 过路费 解题报告
今天拿了这道题目练练手,感觉自己代码能力又增强了不少: 我的思路跟别人可能不一样. 首先我们很容易就能看出,我们需要的边就是最小生成树算法kruskal算法求出来的边,其余的边都可以删掉,于是就有了这 ...
- NOIP2016提高组解题报告
NOIP2016提高组解题报告 更正:NOIP day1 T2天天爱跑步 解题思路见代码. NOIP2016代码整合
- LeetCode 解题报告索引
最近在准备找工作的算法题,刷刷LeetCode,以下是我的解题报告索引,每一题几乎都有详细的说明,供各位码农参考.根据我自己做的进度持续更新中...... ...
随机推荐
- ajax 注册
$(document).ready(function(e){ $("#uid").blur(function(){ var uid = $("#uid").va ...
- poj2886线段树(单点修改,区间查询)
Who Gets the Most Candies? Time Limit: 5000MS Memory Limit: 131072K Total Submissions: 11955 Acc ...
- bzoj2628: JZPSTR
Description 问题描述 你要对一个字符串进行三种操作: 0. 在位置x_i处插入一个字符串y_i 1. 删除位置[x_i, y_i)的字符串 2. 查询位置[x_i, y_i)的字符串包含多 ...
- SQL Select结果增加自增自段(网转)
http://www.cnblogs.com/haver/archive/2011/07/14/2106349.html/* 方法一*/ SELECT 序号= (SELECT COUNT(客户编号) ...
- ubuntu 15.10安装搜狗输入法不能打开
安装Linux是为了更好的做开发,而开发其实不需要输入中文的,然而 在大中国的环境下,电脑没有中文输入法是不行的... 这次装ubuntu 坚持了4天没有中文输入法,我能说,其实没有中文输入法貌似也没 ...
- VirtualBox中安装Android-x86详解
1.下载安装VirtualBox 官网:http://www.virtualbox.org/wiki/Downloads 2.下载Android-x86 官网:http://www.android-x ...
- iconfont.cn阿里巴巴矢量图下载字体图标实战
1.阿里巴巴矢量图网址:www.iconfont.cn 2.然后用新浪微博账号登录 3.输入要查找的图标相应的关键字,回车 4.滑过要找的图标,点击购物车,让图标存储到暂存架中 5.点击暂存架,存储为 ...
- 去掉删除discuz x3.2 的-Powered by Discuz!
如图discuz论坛 网站标题栏的尾巴powered by discuz!是不是很想删除呢,特别是为什么会剩下短线呢?下面就叫你如何准确删除或者修改. 工具/原料 8UFTP(使用自己熟悉的网站文件上 ...
- Android4.0新增的网格布局
网格布局由GridLayout代表,它是Android 4.0新增的布局管理器,因此需要在Android 4.0 之后的版本中才能使用该布局管理器.如果希望在更早的Android平台上使用该布局管理器 ...
- 查找子字符串----KMP算法深入剖析
假设主串:a b a b c a b c a c b a b 子串:a b c a c 1.一般匹配算法 逐个字符的比较,匹配过程如下: 第一趟匹配 a b a b c a b c a c ...