zoukankan      html  css  js  c++  java
  • 很久以前朋友给的一道笔试题(收集金币,只能向下或向右移动,求最短路径)

    N,M,K=map(int,input("(以空格隔开)请输入N,M,K:").split())#split(",")以逗号分隔

    p=[]
    for i in range(K):
    kx,ky=map(int,input("输入金币坐标,x,y以空格隔开:").split())
    p.append([kx,ky])


    p.append([1,1])#加上入口位置
    p.append([N,M])#加上出口位置
    p.sort()
    G=1#如果G=0那么不存在最短路径!
    for i in range(K):
    if p[i][1]>p[i+1][1]:
    print("\n包含:",p[i],p[i+1],",所以不存在最短路径!")
    G=0
    break
    m=[]
    if G:
    for j in range(len(p)-1):
    tx=p[j+1][0]-p[j][0]
    ty=p[j+1][1]-p[j][1]
    if tx:
    m.append("下"*tx)
    if ty:
    m.append("右"*ty)
    print("\n移动顺序为:","".join(m))#转换字符串并去掉空格,不显示重复金币位置移动

  • 相关阅读:
    【poj1655】Balancing Act
    yargs.js用法
    8、typescript
    7、typescript
    6、typescript
    5、typescript
    4、typescript
    3、typescript
    2、typescript
    1、typescript
  • 原文地址:https://www.cnblogs.com/daliner/p/11605575.html
Copyright © 2011-2022 走看看