(Цзичжун) 2182. Козы пасутся (едят) и [префикс]

(Файл ввода - вывода): вход: eat.in выход: eat.out
ограничение по времени: 1000 мс пространственных ограничений: 131072 KB конкретные ограничения
Гото ПарсерКонтест


Название Описание
После того, как ягнята после занятий, должно пастись на пастбище. Деревня овец в настоящее время признаков демонстрации деревенской овец экспертизы, руководители хотели видеть овец выгон деревни.
Деревня овец пастбища распределены непрерывно на каждом пастбищах различные количества выпаса овец. Лидеры хотят видеть несколько раз подряд пастбище, но не хотят , чтобы увидеть больше T T овцы. Лидеры деревни хотят видеть больше стиля деревни овец,основномчтобы посетить несколько пастбищ, насколько это возможно.
Теперь, вы решили помочь мэру с руководством посетитьчто некоторые пастбища, руководители сельских и отвечают требованиям.


Введите
первую строку целое N N и T T , указываеткак много последовательных пастбищ овец сельских акций, а также лидеры хотят увидеть максимальное количество овец.
Вторая линия N N целые числа, между двумя целыми числамиразделенных одним пробелом, I-й д.в. экспрессируется на I-й пастбища я в выпас овец. Номер с 1 1 к N N .

Выход
выходная линия, в общей сложности двух чисел, цифры обозначают начало и конец чисел визита, разделенный пробелом. Всегда направление от ряда малых до большого числа. Кроме того, если возможность одной и той же длины, тем меньше количество продукции отправной точкой для ответа. Данные убедитесь , что по крайней мере есть ответ.


Ввод пробы
. 5 10
. 6. 3. 1 2. 7

Пример вывода
24


Ограничение диапазона данных
30 30 % данных, 1 < знак равно N < знак равно 100 1 <= N <= 100 ;
60 60 % данных, 1 < знак равно N < знак равно 1000 1 <= N <= 1000 ;
100 100 % данных, 1 < знак равно N < знак равно 100000 , 0 < знак равно я < знак равно 1 0 9 , 0 < знак равно T < знак равно 2 3 1 - 1 1 <= N <= 100000, 0 <= а <= 10 ^ 9,0 <= Т <= 2 ^ 31-1 .


Советы
, чтобы удовлетворить не более чем сумма последовательных 10 10 , есть 3 + 2 + 1 3 + 2 + 1 и 2 + 1 + 7 2 + 1 + 7 две возможности, выход приоритет 2 2 в 4 4 Ge пастбищ.


Проблема решения идеи
сделать префикс , а затем насилие, в сочетании с небольшой оптимизацией. ,


код

#include<iostream>
#include<cstring>
#include<string>
#include<cstdio>
#include<algorithm>
#include<iomanip>
#include<cmath>
using namespace std;
long long n,t,a[100010],maxn,p,q,i;
int main(){
   freopen("eat.in","r",stdin);
   freopen("eat.out","w",stdout);
    scanf("%d%lld",&n,&t);
    for(int i=1;i<=n;i++)
    {
        scanf("%lld",&a[i]);
        a[i]+=a[i-1];
    }
    i=0,maxn=0;
    while(i<n-maxn)
    {
        i++;
        for(int j=i+maxn;j<=n;j++)
        {
            if(a[j]-a[i-1]<=t)
            {
                maxn=max(maxn,j-i+1);
                p=i;
                q=j;
            }
            else
            break;
        }
    }
    printf("%d %d",p,q);
}
Опубликовано 119 оригинальных статей · вона похвала 8 · просмотров 4900

рекомендация

отblog.csdn.net/kejin2019/article/details/105162552