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

Re:本地各种测试case各种过,提上去就是WA....求助!!

Posted by bajieguagua at 2015-10-28 20:51:53 on Problem 3278
In Reply To:本地各种测试case各种过,提上去就是WA....求助!! Posted by:zhifang_yu at 2015-06-16 16:02:59
> //#include "stdafx.h"
> 
> 
> #include <stdio.h>
> struct Node
> {
> 	int num;
> 	struct Node *pre;
> }mNodeList[200002];
> 
> 
> int N,K;
> int index=1,count=1,temp,steps=0;
> 
> void BFS()
> {
> 	int map[200002]={0};
> 	struct Node firstNode,mNodeLeft,mNodeRight,mNodeDouble;
> 	firstNode.num = N;
> 	firstNode.pre = NULL;
> 	mNodeList[1] = firstNode;
> 	map[N] = -1;
> 	do
> 	{
> 		mNodeLeft.num = mNodeList[index].num-1;
> 		mNodeLeft.pre = &mNodeList[index];
> 
> 		mNodeRight.num = mNodeList[index].num+1;
> 		mNodeRight.pre = &mNodeList[index];
> 
> 		mNodeDouble.num = mNodeList[index].num*2;
> 		mNodeDouble.pre = &mNodeList[index];
> 		if(mNodeDouble.num <=200000 && map[mNodeDouble.num] != -1)
> 		{
> 			mNodeList[++count] = mNodeDouble;
> 			map[mNodeDouble.num] = -1;
> 		}
> 
> 		if(mNodeRight.num <=100000 && map[mNodeRight.num] != -1)
> 		{
> 			mNodeList[++count] = mNodeRight;
> 			map[mNodeRight.num] = -1;
> 		}
> 
> 		if(mNodeLeft.num>=0 && map[mNodeLeft.num] != -1)
> 		{
> 		   mNodeList[++count] = mNodeLeft;
> 		   map[mNodeLeft.num] = -1;
> 		}
> 
> 		index++;
> 	}while(mNodeLeft.num!=K&&mNodeRight.num!=K&&mNodeDouble.num!=K);
> 
> 	if(mNodeLeft.num == K)
> 	{
> 		temp = count-2;
> 	}else if(mNodeRight.num == K)
> 	{
> 		temp = count-1;
> 	}else
> 		temp = count;
> 	struct Node tempNode;
> 	tempNode = mNodeList[temp];
> 	while(tempNode.pre != NULL)
> 	{
> 		tempNode = *tempNode.pre;
> 		steps++;
> 	}
> 
>     if(N>=K)
> 		printf("%d\n",N-K);
> 	else
> 	    printf("%d\n",steps);
> }
> 
> int main()
> {
> 	while(scanf("%d%d", &N, &K) != EOF)
> 	{
> 		index=1;count=1;temp=0;steps=0;
> 		BFS();
> 	}
> 	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