class Array
  def swap(a,b)
    co=[]
    8.times do |i|
      if i==a
        co.push(self[b])
      elsif i==b
        co.push(self[a])
      else 
        co.push(self[i])
      end
    end

    co.join
  end
end

while s=gets

  cookies=Array.new(8**8,false)
  s=s.split.join


  que=[[s,0]]


  res=0

  while true
    tmp=que.shift
    if tmp[0]=='01234567'
      res=tmp[1]
      break
    end
    if cookies[tmp[0].to_i(8)]==true
      next
    else
      cookies[tmp[0].to_i(8)]=true
      tmp2=tmp[0].scan(/./)
      zero=tmp2.find_index('0')
      if zero==0
        que.push([tmp2.swap(0,1),tmp[1]+1])
        que.push([tmp2.swap(0,4),tmp[1]+1])
      elsif zero==1
        que.push([tmp2.swap(1,0),tmp[1]+1])
        que.push([tmp2.swap(1,5),tmp[1]+1])
        que.push([tmp2.swap(1,2),tmp[1]+1])
      elsif zero==2
        que.push([tmp2.swap(2,1),tmp[1]+1])
        que.push([tmp2.swap(2,6),tmp[1]+1])
        que.push([tmp2.swap(2,3),tmp[1]+1])
      elsif zero==3
        que.push([tmp2.swap(3,2),tmp[1]+1])
        que.push([tmp2.swap(3,7),tmp[1]+1])
      elsif zero==4
        que.push([tmp2.swap(4,0),tmp[1]+1])
        que.push([tmp2.swap(4,5),tmp[1]+1])
      elsif zero==5
        que.push([tmp2.swap(5,4),tmp[1]+1])
        que.push([tmp2.swap(5,1),tmp[1]+1])
        que.push([tmp2.swap(5,6),tmp[1]+1])
      elsif zero==6
        que.push([tmp2.swap(6,5),tmp[1]+1])
        que.push([tmp2.swap(6,2),tmp[1]+1])
        que.push([tmp2.swap(6,7),tmp[1]+1])
      elsif zero==7
        que.push([tmp2.swap(7,6),tmp[1]+1])
        que.push([tmp2.swap(7,3),tmp[1]+1])
      end
    end
  end

  puts res

end