pku 3278

原创 2007年09月26日 22:21:00

 

#include<queue>
#include<stdio.h>
#include<iostream>
using namespace std;


__int64 N,K;
queue<__int64> q;

int mark[200050];

void bfs()
{
 __int64 step=0;
         while(1)
   {
       __int64 len=q.size();//这一层有多少个节点
       while(len>0)
    {
        __int64 temp=q.front();
     if(temp==K)
     {
      printf("%I64d/n",step);
      return;
     }
     if(mark[temp+1]&& temp<K)
     {
      q.push(temp+1);
      mark[temp+1]=0;
     }
         if(temp-1>0 && mark[temp-1])
        
     {
      q.push(temp-1);
      mark[temp-1]=0;
     }
        if(2*temp<2*K-N && mark[2*temp])
     {
      q.push(2*temp);
      mark[2*temp]=0;
     }
        q.pop();
        len--;
    }
    ++step;
   }
}

int main()
{
__int64 i;

 while(scanf("%I64d%I64d",&N,&K)!=EOF)
 {
  if(N>=K)
   printf("%I64d/n",N-K);
  else
  {
   for(i=0;i<200010;i++)
    mark[i]=1;
   q.push(N);
   mark[N]=0;
   bfs();
   while(!q.empty())
    q.pop();
  }
 }
 return 0;
}
 

PKU 3278

#include #include using namespace std;struct Position{ Position( int a, int b ) :pos( a ),...
  • LostCanvas
  • LostCanvas
  • 2010年03月22日 20:00
  • 473

PKU 3278 Catch That Cow

Catch That CowTime Limit: 2000MSMemory Limit: 65536KTotal Submissions: 19245Accepted: 5931De...
  • luoxiaozheng
  • luoxiaozheng
  • 2010年10月25日 21:54
  • 1205

pku 3278 Catch That Cow---BFS

poj 3278(bfs)题目很简单,bfs直接可以解决掉,注意截枝:有些位置前面已经出现了,后面就不用重复了。设了一个tag[]帮助解决这个问题。#include#include#include#i...
  • walkaway11
  • walkaway11
  • 2009年02月18日 13:28
  • 406

pku acm 3278源码

#include #include using namespace std; int n,k; const int N=100001; int Q[N]; int visited[...
  • luoluoxiaocainiao
  • luoluoxiaocainiao
  • 2013年09月09日 15:32
  • 718

BFS PKU 3278

一道很简单的,典型的BFS。 代码虐我千百遍,我待代码如初恋 Catch That Cow Time Limit: 2000MS   Memory Limit: 65536K...
  • ZCR_7
  • ZCR_7
  • 2014年09月09日 09:40
  • 549

pku 3278 Catch That Cow(广搜)

搜过的位置打上标记,没有必要再去一次了。。#include #include using namespace std;struct node{ int n,min;};bool used[200005...
  • logic_nut
  • logic_nut
  • 2009年08月09日 17:32
  • 371

pku 3278 Catch That Cow bfs

//简单的bfs,注意不要超过  133333,否则“无效内存引用”; //x*2 - 100000 //其实不需要,开到200000就行。 #include #include #...
  • u010489389
  • u010489389
  • 2013年05月02日 19:50
  • 351

PKU Campus 2016 I:PKU Zealots(模拟)

PKU Campus 2016 I:PKU Zealots(模拟)
  • PKU_ZZY
  • PKU_ZZY
  • 2017年02月13日 17:48
  • 533

poj3278-两种方法的比较

之前写过两个版本的,一个是两年前的,一个是两年后的,结果两年后的速度比不上两年前的 仔细比较了一下两个的代码,应该我之后的bfs是用queue实现的,而之前是直接使用数组,用front和rear来控...
  • u013700636
  • u013700636
  • 2016年03月27日 17:57
  • 355

PKU OJ 类

按照ac的代码长度分类(主要参考最短代码和自己写的代码)   短代码:0.01K--0.50K;中短代码:0.51K--1.00K;中等代码量:1.01K--2.00K;长代码:2.01K以上。  ...
  • baidu_24789559
  • baidu_24789559
  • 2014年12月24日 13:13
  • 613
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:pku 3278
举报原因:
原因补充:

(最多只允许输入30个字)