| ||||||||||
| Online Judge | Problem Set | Authors | Online Contests | User | ||||||
|---|---|---|---|---|---|---|---|---|---|---|
| Web Board Home Page F.A.Qs Statistical Charts | Current Contest Past Contests Scheduled Contests Award Contest | |||||||||
这题有什么边缘数据吗?测试数据通过了,怎么还不对?能帮我看一下吗?谢谢.In Reply To:Re:我怀疑这道题目的数据有问题啊。我用了一个标准的二分查找,可也错了。 Posted by:ZSUKINGDOM at 2005-05-18 15:43:23 > 我的程序如下:
#include <cstdio>
inline long *partion(long *s,long *e)
{
long *p=s;
for(long *x=s+1;x<e;x++)
if(*x<=*s&&++p!=x)
{
long temp=*x;
*x=*p;
*p=temp;
}
long temp=*s;
*s=*p;
*p=temp;
return p;
}
long f(long *s,long *e,long *key)
{
long *x=e-1;
while(x!=key)
{
if(x>key)x=partion(s,x);
else x=partion(x+1,e);
}
return *x;
}
int main()
{
long n,m;
scanf("%d%d",&n,&m);
long *a=new long[n],*p=a;
while(n--)scanf("%d",p++);
while(m--)
{
int i,j,k;
scanf("%d%d%d",&i,&j,&k);
int N=j-i+1;
long *b=new long[N],*q=b;
p=a+i-1;
while(N--)*(q++)=*(p++);
printf("%d\n",f(b,q,b+k-1));
delete []b;
}
delete []a;
return 0;
}
Followed by:
Post your reply here: |
All Rights Reserved 2003-2013 Ying Fuchen,Xu Pengcheng,Xie Di
Any problem, Please Contact Administrator