• 博客园logo
  • 会员
  • 周边
  • 新闻
  • 博问
  • 闪存
  • 众包
  • 赞助商
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
 






Storm_Spirit

不忘初心,方得始终。
 
 

Powered by 博客园
博客园 | 首页 | 新随笔 | 联系 | 订阅 订阅 | 管理

04 2017 档案

 
2017年浙江省赛总结
摘要:最终是5题银。其实感觉再给点时间能7题的,主要是最后机子不够用了,没时间调试了,当然代码能力弱也是很大的一个问题。 E题,队友当时卡了很久,最终是A了。赛后发现就是一个很水的数位DP。。代码如下: 1 #include <stdio.h> 2 #include <algorithm> 3 #incl 阅读全文
posted @ 2017-04-26 09:04 Storm_Spirit 阅读(426) 评论(0) 推荐(0)
UVALive 3716 DNA Regions ——(扫描法)
摘要:乍一看这个问题似乎是很复杂,但其实很好解决。 先处理出每个点到原点的距离和到x正半轴的角度(从x正半轴逆时针旋转的角度)。然后以后者进行排序。 枚举每一个点到圆心的距离,作为半径,并找出其他到圆心距离不超过这个值的点,由于他们的角度是有序的,因此线性的找出角度差最小的满足题意的两个点即可(相当于拿一 阅读全文
posted @ 2017-04-18 22:44 Storm_Spirit 阅读(193) 评论(0) 推荐(0)
UVALive 3716 DNA Regions ——(式子变形)
摘要:一开始直接想到了二分,写了一发然后过了全部样例就交了,果断WA。因为这个问题显然是不满足单调性的。 然后想之前刚做的斜率优化DP,但是那个是求斜率最大值,不是求满足斜率大于一定值的最大长度的。也构造不出好的方法。 最后的方法是列个式子:i+1~j位置可以成立仅当 (pre[j] - pre[i]) 阅读全文
posted @ 2017-04-18 22:29 Storm_Spirit 阅读(154) 评论(0) 推荐(0)
2016-2017 ACM-ICPC Northwestern European Regional Programming Contest (NWERC 2016)
摘要:只A出了其中的5题。。这场题意好晦涩啊,而且其他题目也有一定的难度。又是tarjan又是dinic的。。暂时先给写出来的5题做个题解吧。 题目链接:https://vjudge.net/contest/158990#overview。 C题,还是一个比较水的题目,只要看懂了题意就能A出来了。 E题, 阅读全文
posted @ 2017-04-16 21:52 Storm_Spirit 阅读(178) 评论(0) 推荐(0)
Egyptian Collegiate Programming Contest (ECPC 2015) C题 Connecting Graph
摘要:这题上次用的是线性求LCA过的,数据比较水,当时没有被T掉(不过线性的做法是在线的)。现在重新的分析一下这个问题。在所有的操作都进行完毕以后,这个图形肯定会变成一棵树,而我们的要求是在这棵树上的一条链上求出边权值t的最大值,那么很显然的可以使用树链剖分来解决这个问题(在做这题之前我还不知道LCA也可 阅读全文
posted @ 2017-04-16 09:52 Storm_Spirit 阅读(196) 评论(0) 推荐(0)
UVALive 4726 Average ——(斜率优化DP)
摘要:这是第一次写斜率优化DP= =。具体的做法参照周源论文《浅谈数形结合思想在信息学竞赛中的应用》。这里仅提供一下AC的代码。 有两点值得注意:1.我这个队列的front和back都是闭区间的;2.在while(...) front++; 这个循环里面,<=写成<就会WA,不知道是为何(讲道理是肯定没问 阅读全文
posted @ 2017-04-14 14:00 Storm_Spirit 阅读(166) 评论(0) 推荐(0)
CodeForces 494B Obsessive String ——(字符串DP+KMP)
摘要:这题的题意就很晦涩。题意是:问有多少种方法,把字符串s划分成不重叠的子串(可以不使用完s的所有字符,但是这些子串必须不重叠),使得t串是所有这些新串的子串。譬如第一个样例,"ababa"和"aba",共有5种方法:{aba}(前3个),{aba}(后3个),{abab},{baba},{ababa} 阅读全文
posted @ 2017-04-13 23:04 Storm_Spirit 阅读(614) 评论(0) 推荐(1)
UVALive 5052 Genome Evolution ——(xjbg)
摘要:本以为这题n=3000,随便n方一下就能过。于是我先枚举长度len再枚举起点,不断增加新的点并删除原来的点,判断在b中的r-l+1是不是等于len即可,这个过程显然要用set维护比较方便,但是貌似卡了这个log,T了= =。 然后修改了一下思路,先枚举左端点,再不断的向有扩张,并用两个变量l和r来标 阅读全文
posted @ 2017-04-13 12:57 Storm_Spirit 阅读(224) 评论(0) 推荐(0)
UVA 11525 Permutation ——(线段树,脑筋急转弯)
摘要:只要注意到对于譬如:S1*(k-1)! 因为后面k-1个数字的全排列个数刚好是(k-1)!,那么第一个数字就是没有取过的数字的第(S1+1)个即可。取走这个数字以后这个数字就不能再用了,依次类推即可得到整个排列了。 那么随便用线段树维护一下即可。 代码如下: 阅读全文
posted @ 2017-04-04 11:39 Storm_Spirit 阅读(252) 评论(0) 推荐(0)
UVALive 4976 Defense Lines ——(LIS变形)
摘要:题意:给出序列,能够从这序列中删去连续的一段,问剩下的序列中的最长的严格上升子串的长度是多少。 这题颇有点LIS的味道。因为具体做法就是维护一个单调的集合,然后xjbg一下即可。具体的见代码吧: 阅读全文
posted @ 2017-04-03 11:08 Storm_Spirit 阅读(303) 评论(0) 推荐(0)
UVA 11605 Lights inside a 3d Grid —— (概率和期望)
摘要:题意:见大白书P181。 分析:一个一个点的进行分析,取其期望然后求和即可。假设当前点在第一次中被选到的概率为p,f[i]表示进行k次以后该点亮的概率(在这里也可以理解为期望),g[i]表示k次后该点不亮的概率,那么联立: 1.f[1] = p; 2.f[i] + g[i] = 1.0; 3.f[i 阅读全文
posted @ 2017-04-01 17:49 Storm_Spirit 阅读(317) 评论(0) 推荐(0)