【洛谷P2743】【poj 1743】[USACO5.1]乐曲主题Musical Themes

题目
还是板子题
因为旋律会同时加减一个数,所以我们在差分数组上做就好了
注意因为差分了,跨越的个数要少一个
基数排序循环写反了,调了好久
qwq

/*
@Date    : 2019-07-19 10:17:22
@Author  : Adscn (adscn@qq.com)
@Link    : https://www.cnblogs.com/LLCSBlog
*/
#include<bits/stdc++.h>
using namespace std;
#define IL inline
#define RG register
#define gi getint()
#define gc getchar()
#define File(a) freopen(a".in","r",stdin);freopen(a".out","w",stdout)
IL int getint()
{RG int xi=0;RG char ch=gc;bool f=0;while(ch<'0'|ch>'9')ch=='-'?f=1:f,ch=gc;while(ch>='0'&ch<='9')xi=(xi<<1)+(xi<<3)+ch-48,ch=gc;return f?-xi:xi;
}
template<typename T>
IL void pi(T k,char ch=0)
{if(k<0)k=-k,putchar('-');if(k>=10)pi(k/10,0);putchar(k%10+'0');if(ch)putchar(ch);
}
const int N=2e5+7;
int n;
int a[N];
namespace SA{int rkx[N],rky[N],rank[N],sa[N],*key1=rkx,*key2=rky;int height[N];int cnt[N],m=380;inline void init(){m=380;}inline void Qsort(){memset(cnt,0,sizeof cnt);for(int i=1;i<=n;++i)++cnt[key1[i]];for(int i=1;i<=m;++i)cnt[i]+=cnt[i-1];for(int i=n;i>=1;--i)sa[cnt[key1[key2[i]]]--]=key2[i];}inline void getsa(){key1=rkx,key2=rky;for(int i=1;i<=n;++i)key1[i]=a[i],key2[i]=i;Qsort();for(int k=1,p=0;p<n;k<<=1,m=p){p=0;for(int i=n-k+1;i<=n;++i)key2[++p]=i;for(int i=1;i<=n;++i)if(sa[i]>k)key2[++p]=sa[i]-k;Qsort();swap(key1,key2);p=key1[sa[1]]=1;for(int i=2;i<=n;++i)key1[sa[i]]=(key2[sa[i-1]]==key2[sa[i]]&&key2[sa[i-1]+k]==key2[sa[i]+k])?p:++p;}for(int i=1;i<=n;++i)rank[sa[i]]=i;}inline void getheight(){for(int i=1,k=0;i<=n;++i){if(k)--k;int s=sa[rank[i]-1];while(a[s+k]==a[i+k])++k;height[rank[i]]=k;}}
}
using namespace SA;
int check(int mid)
{int mx=sa[1],mn=sa[1];for(int i=2;i<=n;++i)if(height[i]<mid)mx=mn=sa[i];else{mn=min(sa[i],mn),mx=max(sa[i],mx);if(mx-mn>mid)return 1;}return 0;
}
int main(void)
{while(~scanf("%d",&n)){if(n==0)break;for(int i=1;i<=n;++i)a[i]=gi;--n;for(int i=1;i<=n;++i)a[i]=a[i+1]-a[i]+90;init();getsa();getheight();int l=0,r=n,ans;while(l<=r){int mid=(l+r)>>1;if(check(mid))ans=mid,l=mid+1;else r=mid-1;}printf("%d\n",ans<4?0:ans+1);return 0;}return 0;
}

转载于:https://www.cnblogs.com/LLCSBlog/p/11214084.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/349962.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

exec导入 php,PHP exec运行一个文件

我正在尝试最后3个小时告诉PHP运行一个简单的文件.我在本地主机中使用wamp服务器用于Windows(Windows 8)我尝试过使用exec()&#xff1a;echo exec(whoami);我得到了权威的回应.还测试了&#xff1a;if(function_exists(exec)) {echo "exec is enabled";}它可能有用吗…

远程连接Oracle 数据库连接报错ORA-12638身份检索失败

数据库版本&#xff1a;oracle11g 当使用navicate或者PLsql使用远程连接服务器的数据库的时候报错 RA-12638身份检索失败 因为是更换了个新电脑出现这种问题了&#xff0c;所以可以排除时服务器数据库的问题&#xff0c;问题应该出现在oracle的客户端上面&#xff1b; 通过修改…

java生成顺丰电子面单,顺丰拼多多电子面单设置教程

100%使用使用拼多多电子面单&#xff0c;无需解密&#xff0c;即可打单发货&#xff0c;让打单更加流畅&#xff0c;减少出错&#xff01;不少商家有疑问&#xff0c;顺丰是月结的合作模式&#xff0c;不用充快递单号&#xff0c;是不是不支持拼多多电子面单呢&#xff1f;当然…

list.action.php,doAction.php里代码可以这样写,大大减少了重复的代码

//接收页面$mysqlinew Mysqli(localhost,root,root,test);if($mysqli->connect_errno){die(Connect Error:.$mysqli->connect_error);}$mysqli->set_charset(utf8);$username$_POST[username];$username$mysqli->escape_string($username);$password$_POST[passwor…

[Jobdu] 题目1530:最长不重复子串

题目描述&#xff1a;最长不重复子串就是从一个字符串中找到一个连续子串&#xff0c;该子串中任何两个字符都不能相同&#xff0c;且该子串的长度是最大的。 输入&#xff1a;输入包含多个测试用例&#xff0c;每组测试用例输入一行由小写英文字符a,b,c...x,y,z组成的字符串&a…

Spring Boot,@ EnableWebMvc和常见用例

事实证明&#xff0c;Spring Boot与标准Spring MVC EnableWebMvc不能很好地融合EnableWebMvc 。 添加注释时发生的事情是禁用了Spring Boot自动配置。 不好的部分&#xff08;浪费了我几个小时&#xff09;是&#xff0c;在任何指南中&#xff0c;您都找不到明确指出的内容。 …

php redirect with post,PHP – redirect并通过POST发送数据

你不能用PHP做这个。正如其他人所说&#xff0c;你可以使用cURL – 但是然后PHP代码成为客户端&#xff0c;而不是浏览器。如果您必须使用POST&#xff0c;那么唯一的方法就是使用PHP生成填充表单&#xff0c;并使用window.onload挂钩来调用javascript来提交表单。C。这里是解决…

php static方法的作用是什么,php static方法指的是什么

php static方法指的是用php中static关键字来定义静态方法和属性&#xff0c;static也可用于定义静态变量以及后期静态绑定&#xff0c;其使用语法如“public static $my_static foo;”。推荐&#xff1a;《PHP教程》Static(静态)关键字本页说明了用 static 关键字来定义静态方…

您好您拨打电话已停机_您好GroovyFX

您好您拨打电话已停机GroovyFX汇集了我最喜欢的两件事&#xff1a; Groovy和JavaFX 。 GroovyFX项目主页面将GroovyFX描述为“ [为JavaFX 2.0提供Groovy绑定”。 该页面上进一步描述了GroovyFX&#xff1a; GroovyFX是一种API&#xff0c;它使在Groovy中使用JavaFX变得更加简…

js中写java集合代码,JS实现JAVA的List功能

本次的文章给大家分享了关于JS实现JAVA的List功能的代码&#xff0c;有兴趣的朋友可以看一下function List(){var list new Array();/* 添加元素 */this.add function(obj){list[list.length] obj;}/* 根据下标获得元素 */this.get function(index){return list[index];}/*…

NOIP模拟测试6「那一天我们许下约定(背包dp)·那一天她离我而去」

那一天我们许下约定 内部题&#xff0c;题干不粘了。 $30分算法$ 首先看数据范围&#xff0c;可以写出来一个普通dp #include<bits/stdc.h> #define ll int #define A 2100 #define mod 998244353 using namespace std; ll f[1501][AAA],n,d,m; int main() {scanf("…

使用TestContainers提高测试性能

在我以前的测试文章中&#xff0c;我描述了如何使用TestContainers为数据库测试提供现实的测试环境。 此评论显示了缺点&#xff1a; …如上所述&#xff0c;似乎总是有一些缺点。 在这种情况下&#xff0c;启动Docker映像及其包含的所有内容的开销将增加您的总体构建时间。 提…

mysql 横向排列,mysql横向转纵向、纵向转横向排列的方法

初始化数据DROP TABLE IF EXISTS test_01;CREATE TABLE test_01 (id int(0) NOT NULL,user varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT 用户,km varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT …

VS2010常用快捷键自定义

VS的快捷键确实很多&#xff0c;不过对我来说实用的几个&#xff0c;要用的时候实在是按得别扭。所以重新设置了某些快捷键。 设置方法如下&#xff1a; 1.进入工具-选项 对话框 2.选择【环境】-【键盘】 3.在 【显示命令包含】 下面的对话框中输入你想重新定义快捷键的中文名&…

matlab光学毕业论文,光学信息处理实验的Matlab仿真.doc

摘要&#xff1a;光学实验系统往往比较精密和复杂&#xff0c;理论课堂教学中加入相关实验的演示往往比较费时&#xff0c;而且也不一定能得到正确的实验结果。随着计算机技术的发展&#xff0c;强大的运算性能和图形处理能力可以很好的解决这个问题&#xff0c;满足课堂教学中…

JavaScript方法——call和apply

1、相同点: a&#xff09; 产生的效果或作用完全相同&#xff1b; b&#xff09; 至少有一个参数&#xff1b; c&#xff09; 第一个参数必须有且是一个对象&#xff08;Object&#xff09;&#xff0c;因为就是这个家伙偷懒。 2、不同点: 传递参数的方式。 前提: 1、有两个对象…

阿帕奇跨域_阿帕奇骆驼备忘单

阿帕奇跨域轮询一个空目录&#xff08;并发送一个空消息&#xff0c;正文为空&#xff09;&#xff1a; from(file://temp?sendEmptyMessageWhenIdletrue)停止路线&#xff1a; .process(new Processor() {public void process(Exchange exchange) throws Exception {getConte…

天空之城 matlab,[转载]matlab演奏《天空之城》代码

%matlab演奏《天空之城》代码l_dao262; %将“l_dao”宏定义为低音“1”的频率262Hzl_re286; %将“l_re”宏定义为低音“2”的频率286Hzl_mi311; %将“l_mi”宏定义为低音“3”的频率311Hzl_fa349; %将“l_fa”宏定义为低音“4”的频率349Hzl_sao392; %将“l_sao”宏定义为低音“…

7.0上的新KIE持久性API

这篇文章介绍了即将到来的Drools和jBPM持久性api。 创建持久性api&#xff08;不绑定到JPA&#xff09;的动机是因为Drools和jBPM中的持久性直到7.0.0发行版才允许将替代性持久性机制与JPA完全集成。 尽管JPA是一个出色的api&#xff0c;但它与传统RDBMS模型紧密地结合在一起&a…

从客户的角度看网站涉及的第一要素

最近给某企业做了一个内部网站&#xff0c;界面风格、内容都是按照客户的要求进行了开发&#xff0c;测试阶段客户比较满意。投入试运行后&#xff0c;客户的领导级人物看了一眼首页中图片的大小&#xff08;600K&#xff09;&#xff0c;马上对我们的软件开发水平进行贬低。因…