POI 10.28
[POI2015]KUR
不考虑构造原串再匹配
考虑开始位置满足什么条件才能匹配。
显然,开始位置确定,后面的字符都确定了。
而且,a,n互质,所以必然能遍历n的剩余系,从不同位置开始,初始的a*s+b mod n的值互不相同。
设初始点为s,x=a*s+b mod n
由上分析可知,s,x一 一对应。
x开始的第i位就是:x+(i-1)*b % n
如果满足条件,对于m位中的每一位,
如果m这一位是0,有:x+(i-1)*b mod n<p
否则有p<=x+(i-1)*b mod n <n
于是有了m个方程。
对于每个方程的合法的解x,都唯一对应一个出发的匹配点s
所以,方程的解数就是答案。
其实不等式比较好解,每个不等式的合法值是一个区间,最多两段。
但是,由于每个不等式的解可能分两段,取交并不方便。
所以,转化为每个不等式不合法的解,对这些区间取并即可。
[POI2006]ORK-Ploughing
贪心题。
肯定要选择以行为主或者以列为主。另外一种操作就要尽可能少。
以以列为主进行讲解:(以行为主同理)
要使行操作尽可能少。
所以,能左、右消就左右消。
都不行?上下消。
但是先消上还是先消下?不知道。
我们还可以有O(n)的时间。
可以枚举规定消上面最多几次。那么,上面次数一定,必然要使得下面次数消的少。
所以,消的优先级:左右、上、下
能消则消。
因为上面能消的话,总共有上限,所以也就消那么几行,先消肯定比后消不劣。
一定可以处理到最优解。
【Luogu3444】ORK-Ploughing(贪心)
POI 10.28的更多相关文章
- 背水一战 Windows 10 (28) - 控件(文本类): TextBox, PasswordBox
[源码下载] 背水一战 Windows 10 (28) - 控件(文本类): TextBox, PasswordBox 作者:webabcd 介绍背水一战 Windows 10 之 控件(文本类) T ...
- CentOS6.5升级内核到3.10.28 --已验证
本文适用于CentOS 6.4, CentOS 6.5,估计也适用于其他Linux发行版. 1. 准备工作 确认内核及版本信息 [root@hostname ~]# uname -r 2.6.32-2 ...
- 使用yum快速升级CentOS 6.5内核到 3.10.28
网上有不少升级CentOS内核的文章,如<CentOS 6.5 升级内核到 3.10.28>,大部分都是下载源码编译,有点麻烦. 在yum的ELRepo源中,有mainline(3.13. ...
- 第16次Scrum会议(10/28)【欢迎来怼】
一.小组信息 队名:欢迎来怼小组成员队长:田继平成员:李圆圆,葛美义,王伟东,姜珊,邵朔,冉华小组照片 二.开会信息 时间:2017/10/28 17:20~17:32,总计12min.地点:东北师范 ...
- CentOS 6.5 升级内核到 3.10.28
本文适用于CentOS 6.4, CentOS 6.5,亲测可行,估计也适用于其他Linux发行版. 1. 准备工作 1.1 下载源码包 Linux内核版本有两种:稳定版和开发版 ,Linux内核版本 ...
- 2016 10 28考试 dp 乱搞 树状数组
2016 10 28 考试 时间 7:50 AM to 11:15 AM 下载链接: 试题 考试包 这次考试对自己的表现非常不满意!! T1看出来是dp题目,但是在考试过程中并没有推出转移方程,考虑了 ...
- 17.10.28&29
28上午 骚猪选讲 28下午 BOZJ 1081 [SCOI2005]超级格雷码 感觉就是一个找规律,然后模拟输出.半天没找到一个比较简便的模拟方法,这份代码是学习网上一位大佬的,很巧妙. 代码: # ...
- MIT JOS学习笔记02:kernel 01(2016.10.28)
未经许可谢绝以任何形式对本文内容进行转载! 在文章开头不得不说的是,因为这部分的代码需要仔细理清的东西太多,所以导致这篇分析显得很啰嗦,还请谅解. 我们在上一篇文章已经分析了Boot Loader的功 ...
- 小白的python之路Linux部分10/28&29
属主属组其他人对文件的rwx权限 1.userdel删东西不全,会有残留,
随机推荐
- Android Studio怎样创建App项目
然后等待大约N分钟: 默认的是Android模式, 改为Project模式更符合我们的习惯:
- 第二章 IP协议详解
第二章 IP协议详解 2.1 IP服务的特点 它为上层协议提供了无状态,无连接,不可靠的服务 名称 简介 优点 缺点 对付缺点的方法 无状态 IP通信双方不同步传输数据的状态信息 无须为保持通信的状态 ...
- Java开发工程师(Web方向) - 02.Servlet技术 - 第4章.JSP
第4章--JSP JSP JSP(Java Server Pages) - 中文名:Java服务器页面 动态网页技术标准 JSP = Html + Java + JSP tags 在服务器端执行,返回 ...
- * 197. Permutation Index【LintCode by java】
Description Given a permutation which contains no repeated number, find its index in all the permuta ...
- jupyter notebook 使用cmd命令窗口打开
第一步:将文件路径改为你需要使用文件所在的路径 第二部: jupyter notebook
- 对int类型最小值INT_MIN取负值结果不变
在32位系统中,int类型的最大值是0x7fffffff(即除了最高的1Bit其他31位都为1),而最小值是0x80000000(除了最高1bit,其他31位都为0). 显然,对于最小值求负数是不存在 ...
- openstack多region介绍与实践---转
概念介绍 所谓openstack多region,就是多套openstack共享一个keystone和horizon.每个区域一套openstack环境,可以分布在不同的地理位置,只要网络可达就行.个人 ...
- SpringCloud IDEA 教学 (二) Eureka Service
写在开头 本篇继续介绍基于Eureka的SpringCloud微服务搭建,回顾一下搭建过程, 第一步:建立一个服务注册中心: 第二步:建立微服务并注入到注册中心: 第三步:建立client端来访问微服 ...
- 有道云笔记Markdown使用
目录 使用规则 代码高亮 制作待办事项 高效绘图 基本规则 使用规则 代码高亮 #include <iostream> #include <string> using name ...
- android 出现Make sure the Cursor is initialized correctly before accessing data from it
Make sure the Cursor is initialized correctly before accessing data from it 详细错误是:java.lang.IllegalS ...