标签:script ble ini panel wrap ios std case ref
2 4 2 3 1 2 4 10 5 0 3 4 5 2 1 6 7 8 9
5 28HintFirst Sample, the satisfied groups include:[1,1]、[2,2]、[3,3]、[4,4] 、[2,3]
#include<iostream>
#include<algorithm>
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
using namespace std;
int n,k;
int a[100100];
int main()
{
int T;
scanf("%d",&T);
while(T--)
{
__int64 sum = 0;
scanf("%d%d",&n,&k);
for(int i=0; i<n; i++)
{
scanf("%d",&a[i]);
}
int bmax,bmin;
for(int i=0; i<n; i++)
{
int max = a[i],min = a[i];
bmax = i;
bmin = i;
int j;
for(j=i; j<n; j++)
{
if(max<a[j])
{
bmax = j;
max = a[j];
}
if(min > a[j])
{
bmin = j;
min = a[j];
}
if(max-min >=k)
{
int k2 = 1;
int k1 = 1;
if(bmax>bmin)
{
for(int v=i; v<bmax; v++)
{
sum += k1++;
}
for(int v=bmin+1;v<bmax;v++)
{
sum -= k2++;
}
i = bmin;
}
else
{
for(int v=i; v<bmin; v++)
{
sum += k1++;
}
for(int v=bmax+1;v<bmin;v++)
{
sum -= k2++;
}
i = bmax;
}
break;
}
}
if(j == n)
{
int pk = 1;
for(int v=i;v<n;v++)
{
sum += pk++;
}
i = n;
break;
}
}
printf("%I64d\n",sum);
}
return 0;
}HDU 5289 Assignment(多校联合第一场1002)
标签:script ble ini panel wrap ios std case ref
原文地址:http://www.cnblogs.com/claireyuancy/p/7156465.html