zoukankan      html  css  js  c++  java
  • bzoj2096

    本来也不打算写这道题的解题报告的,因为比较水
    直接维护两个单调队列(最大值,最小值)随便弄弄就行了
    但是我开始疯狂不知道为什么的RE,然后实在没办法找root要了数据
    测了之后……王苍,根本就没有错啊……
    我就去向root反映,root测了一下以前AC的pascal程序……
    王苍……又都RE了,实在是感人肺腑……

     1 var q1,q2:array[0..10000010] of longint;
     2     a:array[0..10000010] of longint;
     3     t,i,l1,l2,r1,r2,n,ans:longint;
     4     k:longint;
     5 
     6 function max(a,b:longint):longint;
     7   begin
     8     if a>b then exit(a) else exit(b);
     9   end;
    10 
    11 begin
    12   readln(k,n);
    13   for i:=1 to n do
    14     read(a[i]);
    15   t:=1;
    16   l1:=1;
    17   l2:=1;
    18   for i:=1 to n do
    19   begin
    20     while (l1<=r1) and (a[i]>=a[q1[r1]]) do dec(r1);
    21     while (l2<=r2) and (a[i]<=a[q2[r2]]) do dec(r2);
    22     inc(r1);
    23     q1[r1]:=i;
    24     inc(r2);
    25     q2[r2]:=i;
    26     while (l1<=r1) and (l2<=r2) and (a[q1[l1]]-a[q2[l2]]>k) do
    27       if q1[l1]<q2[l2] then
    28       begin
    29         t:=q1[l1]+1;
    30         inc(l1);
    31       end
    32       else begin
    33         t:=q2[l2]+1;
    34         inc(l2);
    35       end;
    36     ans:=max(ans,i-t+1);
    37   end;
    38   writeln(ans);
    39 end.
    View Code
  • 相关阅读:
    springmvc跳转的几种方式
    DFL库安装dmd2
    python中关于turtle库的学习笔记
    带有进度条的圆周率计算
    Splay——学习笔记
    简述树链剖分
    数学专题——学习笔记
    CDQ分治(三维偏序)——学习笔记
    概率与期望DP
    CSP模拟赛20190922
  • 原文地址:https://www.cnblogs.com/phile/p/4473077.html
Copyright © 2011-2022 走看看