Online JudgeProblem SetAuthorsOnline ContestsUser
Web Board
Home Page
F.A.Qs
Statistical Charts
Problems
Submit Problem
Online Status
Prob.ID:
Register
Update your info
Authors ranklist
Current Contest
Past Contests
Scheduled Contests
Award Contest
User ID:
Password:
  Register

貌似数据都对啊,想不通为什么wa

Posted by shenyang1118 at 2009-07-31 12:15:51 on Problem 1757
#include<iostream>
#define MAXN 10001
using namespace std;

int a[MAXN],b[MAXN];
int N;

int BinarySearch(int x)
{
  int p, q, i, L;

  p = 0;   /* Left border of the search  */
  q = N-1; /* Right border of the search */
  L = 0;   /* Comparison counter         */
  while (p <= q) {
    i = (p + q) / 2;
    ++L;
    if(L>14)
    	return 0;
    if (i == x) {
     // printf("N=%d,Found item i = %d"
     //  " in L = %d comparisons\n", N,i, L);
      return L;
    }
    if (x < i)
      q = i - 1;
    else
      p = i + 1;
  }
}

int main()
{
	int i,l,k,ans,x,y,count;
	cin>>i>>l;
	ans=i;
	a[0]=0;
	k=0;
	for(int j=0;j<l;j++)
		ans=(ans+1)*2;
	for(N=i+1;N<=ans && N<=10000;N++)
	{
		if(BinarySearch(i)==l)
			a[k++]=N;
	}
	count=k;
	y=0;
	b[y]=b[++y]=a[0];
	for(int j=0;j<k-1;j++)
	{
		while(j<k-1 && a[j]+1 == a[j+1] )
		{
			count--;
			b[y]=a[j+1];
			j++;
		}
		b[++y]=b[++y]=a[j+1];
	}
	cout<<count<<endl;
	for(int j=0;j<2*count;j++)
	{
		cout<<b[j];
		cout<<" "<<b[++j]<<endl;
	}
	return 0;
}

Followed by:

Post your reply here:
User ID:
Password:
Title:

Content:

Home Page   Go Back  To top


All Rights Reserved 2003-2013 Ying Fuchen,Xu Pengcheng,Xie Di
Any problem, Please Contact Administrator