胡博销售者 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
24350
回复
删除
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.