讨论 / 我急
胡博销售者 2012-02-08 04:46:00
点我顶贴 收藏 删除
题目描述

万圣节又到了!Farmer John打算带他的奶牛去参加一个化装晚会,但是,FJ只做了一套能容下两头总长不超过S(1 <= S <= 1,000,000)的牛的恐怖服装。FJ养了N(2 <= N <= 20,000)头按1..N顺序编号的奶牛,编号为i的奶牛的长度为L_i(1 <= L_i <= 1,000,000)。如果两头奶牛的总长度不超过S,那么她们就能穿下这套服装。 FJ想知道,如果他想选择两头不同的奶牛来穿这套衣服,一共有多少种满足条件的方案。

输入

* 第1行: 2个用空格隔开的整数:N 和 S * 第2..N+1行: 第i+1为1个整数:L_i

输出

* 第1行: 输出1个整数,表示FJ可选择的所有方案数。注意奶牛顺序不同的两种方案是被视为相同的

样例输入

4 6

3

5

2

1

样例输出

4

提示

输出说明:

4种选择分别为:奶牛1和奶牛3;奶牛1和奶牛4;奶牛2和奶牛4;奶牛3和奶牛4。

我总是超时一个点

#1 ?号疯子(第四代)@2011-12-18 18:38:00
回复 删除
var

n,s,i,j,max:longint;

a:array[1..20000] of longint;

begin

readln(n,s);

for i:=1 to n do

readln(a[i]);

for i:=1 to n-1 do

for j:=i+1 to n do

if a[i]+a[j]<=s then inc(max);

writeln(max);

end.

#2 ?号疯子(第四代)@2011-12-18 18:39:00
回复 删除
不知会不会过时

#3 zaqwsxcde@2012-02-08 04:45:00
回复 删除
回复 板凳?号疯子(第四代) 的帖子

没超额。。。。正确了。

#4 zaqwsxcde@2012-02-08 04:46:00
回复 删除
回复 楼主胡博销售者 的帖子

对了。我在网站里试过了。

查看更多回复
提交回复