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 }