A:搜索好难啊根本不会啊。

  B:原题都能写挂没救了啊。考虑求出每个数作为最小值时能向左向右扩展到的最远位置,那么这段区间里的所有数就不可能作为唯一的最小值成为最优解了,否则假设可以的话这段区间里的数都能整除该数,也一定能整除之前找到的最小值,区间就可以扩展到这里。所以从左往右从右往左各扫一遍即可,注意各种细节。

#include<iostream>
#include<cstdio>
#include<cstdlib>
#include<cstring>
#include<algorithm>
#include<cmath>
using namespace std;
int read()
{
int x=,f=;char c=getchar();
while (c<''||c>'') {if (c=='-') f=-;c=getchar();}
while (c>=''&&c<='') x=(x<<)+(x<<)+(c^),c=getchar();
return x*f;
}
#define N 500010
int n,a[N],l[N],r[N],ans;
struct data
{
int l,r;
bool operator ==(const data&a) const
{
return l==a.l&&r==a.r;
}
bool operator <(const data&a) const
{
return l<a.l||l==a.l&&r<a.r;
}
}b[N];
int main()
{
freopen("sequence.in","r",stdin);
freopen("sequence.out","w",stdout);
n=read();
for (int i=;i<=n;i++) a[i]=read();
for (int i=;i<=n;i++)
{
r[i]=i;
while (r[i]<n&&a[r[i]+]%a[i]==) r[i]++;
while (i<r[i]) r[i+]=r[i],i++;
}
for (int i=n;i>=;i--)
{
l[i]=i;
while (l[i]>&&a[l[i]-]%a[i]==) l[i]--;
while (i>l[i]) l[i-]=l[i],i--;
}
for (int i=;i<=n;i++) ans=max(ans,r[i]-l[i]);
for (int i=;i<=n;i++) b[i].l=l[i],b[i].r=r[i];
sort(b+,b+n+);
int t=unique(b+,b+n+)-b-;n=t;
int cnt=;
for (int i=;i<=n;i++) if (b[i].r-b[i].l==ans) cnt++;
cout<<cnt<<' '<<ans<<endl;
for (int i=;i<=n;i++) if (b[i].r-b[i].l==ans) printf("%d ",b[i].l);
return ;
}

  C:可能连二分都不会了啊。设f[i][j]为前i行切j刀能得到的最大的最小值,转移时枚举上次切割位置二分答案算出来,复杂度n3log。然后就一直在想怎么利用各种单调性去log了,最后无果卡了一波常,最后卡进2s然后好像多拿了10分。正解直接二分答案明明非常显然啊怎么我不会啊。

  result:180 rank8

Contest 7的更多相关文章

  1. Programming Contest Problem Types

        Programming Contest Problem Types Hal Burch conducted an analysis over spring break of 1999 and ...

  2. hdu 4946 2014 Multi-University Training Contest 8

    Area of Mushroom Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others) ...

  3. 2016 Multi-University Training Contest 2 D. Differencia

    Differencia Time Limit: 10000/10000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)Tot ...

  4. 2016 Multi-University Training Contest 1 G. Rigid Frameworks

    Rigid Frameworks Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others) ...

  5. hdu-5988 Coding Contest(费用流)

    题目链接: Coding Contest Time Limit: 2000/1000 MS (Java/Others)     Memory Limit: 65536/65536 K (Java/Ot ...

  6. ZOJ 3703 Happy Programming Contest

    偏方记录背包里的物品.....每个背包的价值+0.01 Happy Programming Contest Time Limit: 2 Seconds      Memory Limit: 65536 ...

  7. 2012 Multi-University Training Contest 9 / hdu4389

    2012 Multi-University Training Contest 9 / hdu4389 打巨表,实为数位dp 还不太懂 先这样放着.. 对于打表,当然我们不能直接打,这里有技巧.我们可以 ...

  8. 2014 Multi-University Training Contest 9#11

    2014 Multi-University Training Contest 9#11 Killing MonstersTime Limit: 2000/1000 MS (Java/Others)   ...

  9. 2014 Multi-University Training Contest 9#6

    2014 Multi-University Training Contest 9#6 Fast Matrix CalculationTime Limit: 2000/1000 MS (Java/Oth ...

  10. 校际联合Contest

    每次开一个坑都像是重新被碾压的预感 最近的新闻,以前很喜欢乔任梁的<复活>...然后他就死了...感觉我再多愁善感一点的话...就要悲伤逆流成河了吧... Contest 09/24(乐滋 ...

随机推荐

  1. tkinter事件高级用法实例

    from tkinter import * import threading, time trace = 0 class CanvasEventsDemo: def __init__(self, pa ...

  2. 【MYSQL命令】mysql基础命令

    1.查询MYSQL当前用户命令:select user() mysql> select user(); +------------------------+ | user() | +------ ...

  3. 我们一起学习WCF 第二篇WCF承载多个接口

    前言:现在王大叔养了大批猪,赚了很多钱.但是最近发现养鸡也可以赚很多钱,他就像扩展业务开始养鸡.又过两年他发现市场对狗的需求量很大,他开始养狗.那么他改怎么做呢,不可能去修改猪住的地方把鸭子和狗放里面 ...

  4. MyBatis.Net 配置

    假设我们现在有这样的需求,要对学生信息进行管理 学生表有要以下要求 字段名称 数据类型 说明 stuNo 字符 学号,该列必填,为主键递增 stuName 字符 学生姓名,该列必填,要考虑姓氏可能是两 ...

  5. NTP(Network Time Protocol)

    Linux NTP配置详解 (Network Time Protocol) http://www.ntp.org/ Meinberg NTP packages provide a GUI instal ...

  6. ubuntn 安装软件

    安装输入法 一.Ctrl+Alt+T打开终端,输入sudo apt-get install fcitx,安装fcitx插件. 二.打开input method,选择fcitx. 三.打开system ...

  7. Oracle集合

    --union 并集 select * from emp where ename like '%A%' union select * from emp where ename like '%M%'; ...

  8. 译 - Cassandra 数据建模的基本规则

    Basic Rules of Cassandra Data Modeling 原文地址:http://www.datastax.com/dev/blog/basic-rules-of-cassandr ...

  9. Requests库入门——应用实例-网络图片的爬取与保存(好看的小姐姐≧▽≦)

    在B站学习这一节的时候,弹幕最为激烈,不管大家是出于什么目的都想体验一下网络爬虫爬取图片的魅力,毕竟之前的实例实话说都是一些没有太大作用的信息. 好了,直接上代码: import requests i ...

  10. PSP Daily软件Alpha版本——基于spec评论

    题目要求:每个小组评论其他小组Alpha发布作品的软件功能说明书.要求和提交在[https://edu.cnblogs.com/campus/nenu/SWE2017FALL/homework/122 ...