比赛 20120419s 评测结果 EEEEEEETET
题目名称 河床 最终得分 0
用户昵称 日光。 运行时间 0.000 s
代码语言 C++ 内存使用 0.00 MiB
提交时间 2012-04-19 11:27:14
显示代码纯文本
#include<fstream>
using namespace std;
int d[30001],n,ans=0,s,l,k;
int small(int a)
{
	int r;
	for(r=1;r<=n;r++)
	{
		if(d[r]<a) return d[r];
	}
}
int big(int a)
{
	int r;
	for(r=1;r<=n;r++)
	{
		if(d[r]>a) return d[r];
	}
}
int search(int t,int left,int right)
{
	int r;
	if(ans<t)
	{
		ans=t;
	}
	else
	{
		for(r=left;r<=right;r++)
		{
			s=small(d[left]);
			l=big(d[left]);
			if((l-s)<=k)
			{
				search(t+1,left,right+1);
			}
			else search(t,left+1,right+1);
			if(left==right&&left==n) break;
		}
	}
}
int main()
{
	ifstream fin("riverbed.in");
	ofstream fout("riverbed.out");
	int i;
	fin>>n>>k;
	for(i=1;i<=n;i++)
	{
		fin>>d[i];
	}
	search(0,1,2);
	fout<<ans;
	return 0;
}