华为OJ 棋盘格子路径
来源:互联网 发布:大数据分析研判 编辑:程序博客网 时间:2024/05/16 06:27
请编写一个函数(允许增加子函数),计算n x m的棋盘格子(n为横向的格子数,m为竖向的格子数)沿着各自边缘线从左上角走到右下角,总共有多少种走法,要求不能走回头路,即:只能往右和往下走,不能往左和往上走。输入描述:输入两个正整数输出描述:返回结果输入例子:22输出例子:6
# Pythonclass Node(object): def __init__(self, x, y): self.x = x self.y = ydef bfs(n,m): if n<=0 or m <= 0: return # bfs初始化,这里不需要visited数组 queue = [] step = [[0,1],[1,0]] count = 0 queue.append(new Node(0,0)) while queue: #当队列不为空的时候 local = queue.pop() count += 1 for i in range(len(step)): next = Node(local.x+step[i][0], local.y + step[i][1]) if 0 <= next.x < n and 0 <= next.y < m: queue.append(next) print count + 1while True: try: n, m = raw_input().split() bfs(n,m) except: break
#递归# 1*m的格子有m+1种走法# n*1... n+1种走法def num(n,m): if n<=0 or m <= 0: return if n==1: return m+1 elif m == 1: return n+1 else: return num(n-1,m) + num(n, m-1)
0 0
- 华为OJ 棋盘格子路径
- 华为oj--走格子
- 华为机试——棋盘格子数
- 走格子/棋盘问题 有多少条路径可走
- 2.算法:棋盘路径问题。走格子/棋盘问题 有多少条路径可走
- 走格子/走棋盘问题
- 格子路径问题
- 华为OJ——201301 JAVA 题目2-3级(棋盘走法)
- 华为oj 字串的连接最长路径查找
- 【华为OJ】【014-字串的连接最长路径查找】
- 华为OJ——字串的连接最长路径查找
- 华为OJ 初级:字串的连接最长路径查找
- 【华为 OJ】字串的连接最长路径查找
- 华为OJ——字串的连接最长路径查找
- 华为OJ:字串的连接最长路径查找
- 华为oj初级 字串的连接最长路径查找
- Java实现棋盘格子走法
- 华为OJ
- git的小知识(实习经验)
- Secure Spring REST API using OAuth2
- Android 和 Java 内存泄露检测
- Course Schedule II
- 如何判断链表是否存在环和求链表中间节点
- 华为OJ 棋盘格子路径
- 类加载器的工作原理【转载】
- [React Native混合开发]React Native中的Flexbox布局
- C++类定义与实现(Class)
- poj 1679 次小生成树 The Unique MST
- HDU 5407 CRB and Candies(素数筛 + 逆元 + 组合数公式)——2015 Multi-University Training Contest 10
- 试水Fragment(3)-5min仿微信主界面
- 喷水装置(二) nyoj
- (转)解决Ubuntu自动挂载U盘/SD Card变成只读问题