cf 153

http://codeforces.com/contest/252

A.

数据小直接暴力。

B.

当时理解错了。

c.

二逼了。。。

j不应该每次从0开始,否则会超时。

比如

4 3

1 2 3 4

1到4不超过3

2到4就更不会超。

View Code
 1 #include<stdio.h>
 2 int main()
 3 {
 4     __int64 n;
 5     __int64 d,i,j;
 6     __int64 a[100010];
 7     while(~scanf("%I64d%I64d",&n,&d))
 8     {
 9         for(i=0;i<n;i++)
10         scanf("%I64d",&a[i]);
11         __int64 sum=0;
12         j=0;
13         for(i=0;i<n;i++)
14         {
15             for(;j<n;j++)
16             {
17                 if(a[j]-a[i]>d)
18                 {
19                     break;
20                 }
21 
22             }
23             sum+=(j-i-1)*(j-i-2)/2;
24         }
25         printf("%I64d\n",sum);
26     }
27 }

 

posted on 2012-12-08 11:04  仁者无敌8勇者无惧  阅读(217)  评论(0编辑  收藏  举报

导航