记录编号 43396 评测结果 AAAAA
题目名称 木棍 最终得分 100
用户昵称 GravatarCloud 是否通过 通过
代码语言 C++ 运行时间 0.018 s
提交时间 2012-10-10 10:59:33 内存使用 3.20 MiB
显示代码纯文本
#include<fstream>
#include<cstdlib>
using namespace std;
struct yu
{
	int l;
	int w;
}s[5001];
int f[5001];
int cmp(const void *a,const void *b)
{
	struct yu*c=(struct yu *)a;
	struct yu*d=(struct yu *)b;
	if(c->l!=d->l)
		return c->l - d->l;
	else
		return c->w - d->w;
}
int main(void)
{
	ifstream fin("wooden.in");
	ofstream fout("wooden.out");
	int n;
	fin>>n;
	int i,j;
	for(i=0;i<n;i++)
		fin>>s[i].l>>s[i].w;
	qsort(s,n,sizeof(s[0]),cmp);
	int t=1,k=1,p;
	f[0]=s[0].w;
	for(i=1;i<n;i++)
	{
		int max=-1;
		for(j=0;j<k;j++)
			if(f[j]<=s[i].w)
			{
				if(f[j]>max)
				{
					p=j;
					max=f[j];
				}
			}
		if(max!=-1)
			f[p]=s[i].w;
		else
		{
			f[k]=s[i].w;
			k++,t++;
		}
	}
	fout<<t;
	fin.close();
	fout.close();
	return 0;
}