校长的收藏(洛谷 U4534)
题目背景
XS中学的校长喜欢收集手办,家里面都是价值不菲的手办。
校长喜欢给手办们排队并且对于某些些区间内的手办喜爱有加。
现在,校长外出散步(找乐子),你潜入他的房间打算借(偷走)他的手办炫耀一下。
题目描述
现在有 一列 手办,并且校长给每个手办设置了独一无二的编号ai(可能 重复 ,等等,那怎么独一无二)。
现在给出区间喜爱度的定义:
如果一个区间【L,R】(第L个手办只第R个手办,L<=R),这个区间满足,存在一个k(L<= k <= R),并且对于任意的i(L<=x<=R),ai都能被ak整除。这样的一个区间 【L,R】的区间喜爱度为 R-L 。
为了让虚荣心最大化,你需要求出最大区间喜爱度和喜爱度最大的区间的个数(有交集的两个不完全重合的区间视为不同的两个区间)然后取走。
输入输出格式
输入格式:
第一行,一个整数n.
第二行,n个整数,第i个数代表第i个手办的编号ai
输出格式:
第一行两个整数,num和val,表示区间喜爱度最大的区间的个数以及最大区间喜爱度。
第二行num个整数,按升序输出每个喜爱度最大的区间的L.
输入输出样例
5
4 6 9 3 6
1 3
2
5
2 3 5 7 11
5 0
1 2 3 4 5
说明
1 <= n <= 500000 , 1 <= a < 2 ^ 31
保证数据随机。
Tips:有巧妙的搜索/枚举算法,也可以用令人%拜的RMQ或者ST表 硬刚。
/*
巧(zhi)妙(jie)枚举一个区间的ak,然后用这个ak向两边拓展找否个要求的区间,更新答案,要注意的是区间不能重复。
*/
#include<cstdio>
#include<iostream>
#define M 500010
using namespace std;
int a[M],b[M],tot,ans,n;
int main()
{
scanf("%d",&n);
for(int i=;i<=n;i++)
scanf("%d",&a[i]);
for(int i=;i<=n;i++)
{
int ll=i,rr=i;
while()
{
if(ll==)break;
if(a[ll-]%a[i]!=)break;
ll--;
}
while()
{
if(rr==n)break;
if(a[rr+]%a[i]!=)break;
rr++;
}
if(rr-ll>ans)
{
tot=;ans=rr-ll;
b[tot]=ll;
}
else if(rr-ll==ans&&ll!=b[tot])
{
b[++tot]=ll;
}
}
printf("%d %d\n",tot,ans);
for(int i=;i<=tot;i++)
printf("%d ",b[i]);
return ;
}
校长的收藏(洛谷 U4534)的更多相关文章
- 洛谷P1352 codevs1380 没有上司的舞会——S.B.S.
没有上司的舞会 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 钻石 Diamond 题目描述 Description Ural大学有N个职员,编号为1~N.他们有 ...
- 洛谷1352 CODEVS1380 没有上司的舞会
洛谷的测试数据貌似有问题,4个点RE不可避 CODEVS可AC —————— 10分钟后追记:在洛谷把数组范围开到10000+就过了 —————— 题目描述 Description Ural大学有N个 ...
- 洛谷 p1352 没有上司的舞会 题解
P1352 没有上司的舞会 题目描述 某大学有N个职员,编号为1~N.他们之间有从属关系,也就是说他们的关系就像一棵以校长为根的树,父结点就是子结点的直接上司.现在有个周年庆宴会,宴会每邀请来一个职员 ...
- 洛谷1640 bzoj1854游戏 匈牙利就是又短又快
bzoj炸了,靠离线版题目做了两道(过过样例什么的还是轻松的)但是交不了,正巧洛谷有个"大牛分站",就转回洛谷做题了 水题先行,一道傻逼匈牙利 其实本来的思路是搜索然后发现写出来类 ...
- 洛谷P1108 低价购买[DP | LIS方案数]
题目描述 “低价购买”这条建议是在奶牛股票市场取得成功的一半规则.要想被认为是伟大的投资者,你必须遵循以下的问题建议:“低价购买:再低价购买”.每次你购买一支股票,你必须用低于你上次购买它的价格购买它 ...
- 洛谷 P2701 [USACO5.3]巨大的牛棚Big Barn Label:二维数组前缀和 你够了 这次我用DP
题目背景 (USACO 5.3.4) 题目描述 农夫约翰想要在他的正方形农场上建造一座正方形大牛棚.他讨厌在他的农场中砍树,想找一个能够让他在空旷无树的地方修建牛棚的地方.我们假定,他的农场划分成 N ...
- 洛谷P1710 地铁涨价
P1710 地铁涨价 51通过 339提交 题目提供者洛谷OnlineJudge 标签O2优化云端评测2 难度提高+/省选- 提交 讨论 题解 最新讨论 求教:为什么只有40分 数组大小一定要开够 ...
- 洛谷P1371 NOI元丹
P1371 NOI元丹 71通过 394提交 题目提供者洛谷OnlineJudge 标签云端评测 难度普及/提高- 提交 讨论 题解 最新讨论 我觉得不需要讨论O long long 不够 没有取 ...
- 洛谷P1538迎春舞会之数字舞蹈
题目背景 HNSDFZ的同学们为了庆祝春节,准备排练一场舞会. 题目描述 在越来越讲究合作的时代,人们注意的更多的不是个人物的舞姿,而是集体的排列. 为了配合每年的倒计时,同学们决定排出——“数字舞蹈 ...
随机推荐
- Notepad++安装插件
https://sourceforge.net/projects/npp-plugins/files/ 下载完插件后,通过notepad++的设置>>>>导入>>& ...
- 图片预览------photoswipe 使用
photoswipe 使用 预览图片后,需要点击关闭按钮才能关闭,点击图片事件效果是放大图片,和微信的效果不一致,最后改用微信预览图片的接口了,但是例子可以用,记录一下!! http://www.cn ...
- iOS规范化时间格式,object-C计算指定时间与当前的时间差
object-c计算指定时间与当前的时间差 头文件(.h): #import <Foundation/Foundation.h> @interface LuDate : NSDate +( ...
- Listview多种布局的使用
ListView中有两个可以用来让ListView可以在视图中显示多种布局的方法,分别是getItemType和getViewTypeCount 其中 getItemViewType返回的是有参数po ...
- CF861B Which floor?
思路: 暴力枚举. 实现: #include <bits/stdc++.h> using namespace std; int n, m, x, y; bool check(int x, ...
- ajax怎么理解?
Ajix是创建交互式网页的前端网页开发技术,不是一种语言,ajax是基于http来传输数据的,他是利用浏览器提供操作http的接口(XMLHttpRequest或者activeXobject),来操作 ...
- Pyhton TestCase运行闪退与失败,原因不详。。。
把源码贴上来,希望某位大神可以指点迷津: """Unit test for odbchelper.py This program is part of "Div ...
- Activity随笔
Activity的生命周期 1.正常情况下的生命周期 onCreate: Activity正在被创建,生命周期中的第一个方法,常在此方法中做一些初始化工作,比如调用setContentView方法, ...
- Linux下ifconfig不显示ip地址问题总结
问题一:ifconfig之后只显示lo,没有看到eth0 ? eth0设置不正确,导致无法正常启动,修改eth0配置文件就好 ubuntu 12.04的网络设置文件是/etc/network/inte ...
- GetArxPath
extern HINSTANCE _hdllInstance;CString GetArxPath(){ CString strArxPath; GetModuleFileName(_hdllInst ...