Wannafly Union Goodbye 2016
A
题意:平面上有n个点(n<=100000),给你一个p(20<=p<=100) 判断是否存在一条直线至少过[np/100](向上取整)个点,时限20s,多组数据
分析:概率算法
最直接的想法是枚举任意两个点算出这条直线经过多少点,这样至少也是O(n^2)(当然肯定不止),TLE
注意p>=20,假设结果存在,那么这条直线要经过至少n/5个点
那么一次枚举两个点,成功的概率是1/5*1/5=1/25
也就是说如果结果存在,那么一次枚举枚举不到的概率是24/25
如果枚举n次,一直都枚举不到的概率是(24/25)^n
当n比较大的时候,这种枚举不到的概率就很小
所以根据相应时限可以得到一个n的值,进行枚举,如果找到了那么就是possible,如果没找到就可以认为是impossible,我取的n是250
注意特判n=1
B
题意:f(0)="R",f(i)=~f(i-1)(R变成B,B变成R)+f(i-1),询问第Y次的字符串第P位是R还是B
分析:分治
每次可以根据当前位置和中间位置作比较,去左边还是右边,注意的是每次递归都要有一个d来表示当前层第一位是R还是B,如果进入左边则d不变,如果进入右边则d^1
C
题意:n*n的矩阵(n<=200),找到一个最大的k,使得存在一个k*k的矩阵,每一行每一列都是回文串
分析:预处理
h[k][i][j]表示第k行,第i位到第j位是否是回文串,这个可以用区间dp求出,h[k][i][j]|=h[k][i+1][j-1]&&s[k][i]==s[k][j],注意初始化的时候要考虑两个相邻的相同字母
l[k][i][j]同理表示列的
现在可以想到如果枚举(i,j),再枚举个k,那么还需要n的时间check,所以时间复杂度是O(n^4)->TLE,还需要预处理
f[i][j][k]表示s[i][j]s[i][j+1]s[i][j+2]......s[i][j+k-1]这段串一直向下扩展最多能扩展多少行(也就是保证每行的i...j+k-1都是回文串)
同理g[i][j][k]是表示列的情况
那么再枚举(i,j)和k,就可以通过O(1)的时间判断k是否可行了,即判断f[i][j][k]和g[i][j][k]是否都>=k
O(n^3)
D
题意:将一个数分解质因数,将不同的质因子加起来得到一个新数,不断操作直到成为一个素数,操作的次数就称为原始数的操作次数;给出A,B,K(均<=1000000),询问[A,B]内操作次数为K的数有多少(有P<=100000组查询)
分析:筛+vector
首先可以根据素数筛很容得到每个数的不同质因子的和s[i]
f[i]表示操作次数,那么f[i]=f[sum[i]]+1 (sum[i]一定小于i)
然后就是查询的问题
易得操作次数肯定不会太大(实际上最多不会超过13)
那么就可以根据操作次数,把操作次数相同的数从小打到放进vector中
对于每个查询[A,B],只要在K对应的那个vector中二分查找就行了
E
题意:T<=100组数据,每组数据给出n个数,你每次可以任选两个数,将其中一个+1,另一个-1,问经过若干次操作,最多能有多少个数相等
分析:思维题
选择一个数作为辅助数,那么可以将其它所有数的大小任意调,当然可以调到都相等,所以答案至少是n-1
答案能否为n呢?如果所有数的和能被n整除,那么就是n了
F
题意:一道计算几何,留坑
Wannafly Union Goodbye 2016的更多相关文章
- Wannafly Union Goodbye 2016-A//初识随机化~
想来想去还是把这个题写下来了.自己在补题遇到了许多问题. 给出n(n<=1e5)个点,求是否存在多于p(p>=20)×n/100的点在一条直线上... 时限20s,多组数据,暴力至少n^2 ...
- Goodbye 2016 总结与展望
今天居然是2016年的最后一天了,写点什么回忆吧. 2016开始的时候我刚拿到普及组一等奖,还只是压线,水平很差.学校并不知道这有多差,于是狠狠宣传这所谓的"光荣事迹".那段时间我 ...
- 【Mutual Training for Wannafly Union #1 】
A.Phillip and Trains CodeForces 586D 题意:过隧道,每次人可以先向前一格,然后向上或向下或不动,然后车都向左2格.问能否到达隧道终点. 题解:dp,一开始s所在列如 ...
- Mutual Training for Wannafly Union #1解题报告
---恢复内容开始--- q神等人组织的vjudge上的多校训练,题目基本上都来自于CF,#1是上周进行的,参加后感觉收获很多,因为上周准备期中比较忙,解题报告现在补上. 比赛地址(兼题目地址) A题 ...
- Wannafly Union#1
题目链接:http://vjudge.net/contest/142053#overview A.题意:有一个3*n的隧道,人和车轮流走,人先向右走一步,然后选在是在原地不动还是上下移动一格,之后车开 ...
- Mutual Training for Wannafly Union #6 E - Summer Trip(并查集)
题目链接:http://www.spoj.com/problems/IAPCR2F/en/ 题目大意: 给m个数字代表的大小,之后n组数据,两两关联,关联后的所有数字为一组,从小到大输出组数以及对应的 ...
- Mutual Training for Wannafly Union #2
codeforces 298A. Snow Footprints 分类讨论三种情况: ①..RRRRRR… ②..LLLLLLL… ③..RRRLLLL.. //AC by lwq: #includ ...
- Mutual Training for Wannafly Union #8 D - Mr.BG Hates Palindrome 取余
Mr.BG is very busy person. So you have been given enough time (1000 milliseconds) to help him. Mr. B ...
- Mutual Training for Wannafly Union #9
A(SPOJ NPC2016A) 题意:给一个正方形和内部一个点,要求从这个点向四边反射形成的路线的长度 分析:不断做对称,最后等价于求两个点之间的距离 B(CF480E) 题意:求01矩阵内由0组成 ...
随机推荐
- Apworks框架实战
Apworks框架实战(一):Apworks到底是什么? Apworks框架实战(二):开始使用 Apworks框架实战(三):单元测试与持续集成 Apworks框架实战(四):使用Visual St ...
- 仓位管理 – 1.理论篇
看到文章标题中的"仓位管理",读者可能会认为它只适用于股市投资.其实不然.只要是投资都涉及到风险.回报率.投资额度,都会涉及到仓位管理.再者,人生本身就带着无数的抉择.风险和回报, ...
- js正则表达式校验非正整数:^((-\d+)|(0+))$
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- 【转】zigbee终端无法重连的问题解决
zigbee终端无法重连的问题解决 1.zigbee重连的原因 (1)zigbee由于各种原因的干扰导致信号太差而掉线. (2)协调器重启. 2.zigbee终端重连的处理 (1)zigbee掉线后会 ...
- redis incr incrby decr decrby命令
incr.incrby.decr.decrby命令的作用和用法 redis中incr.incrby.decr.decrby属于string数据结构,它们是原子性递增或递减操作. incr递增1并返回递 ...
- JDBC数据库访问操作的动态监测 之 p6spy
P6spy是一个JDBC Driver的包装工具,p6spy通过对JDBC Driver的封装以达到对SQL语句的监听和分析,以达到各种目的. P6spy1.3 sf.net http://sourc ...
- 移动端嵌入pdf.js远程请求pdf出现(206)
最近在做移动端的开发,需要嵌入pdf进行预览.看了很多的js组件后选择了pdf.js:使用起来还是比较方便的,至于使用网上有很多的教程. 但在使用过程中出现了如下一个问题(我做的是IOS系统): 问题 ...
- 【转】你所不知道的HTML <head/> 头标签
HTML的头部内容特别多,有针对SEO的头部信息,也有针对移动设备的头部信息.而且各个浏览器内核以及各个国内浏览器厂商都有些自己的标签元素,有很多差异性.移动端的工作已经越来越成为前端工作的重要内容, ...
- Java中的关键字 transient
先解释下Java中的对象序列化 在讨论transient之前,有必要先搞清楚Java中序列化的含义: Java中对象的序列化指的是将对象转换成以字节序列的形式来表示,这些字节序列包含了对象的数据和信息 ...
- ASP.NET MVC 5 03 - 安装MVC5并创建第一个应用程序
不知不觉 又逢年底, 穷的钞票 所剩无几. 朋友圈里 各种装逼, 抹抹眼泪 MVC 继续走起.. 本系列纯属学习笔记,如果哪里有错误或遗漏的地方,希望大家高调指出,当然,我肯定不会低调改正的.(开个小 ...