RT,类比二维的情况,申请一个三维矩阵即可,无非是遍历矩阵时判断的条件多一点而已。
Python代码:
#coding=utf-8
import sys
def Matrix(rows,cols,heights):
matrix = [[[0 for height in range(heights+1)]
for col in range(cols+1)]
for row in range(rows+1)]
return matrix
def Mark(rows,cols,heights):
matrix = [[['000' for height in range(heights+1)]
for col in range(cols+1)]
for row in range(rows+1)]
return matrix
def printf(mk,x,i,j,k):
if i==0 or j==0 or k==0:return
if mk[i][j][k]=='111':
printf(mk,x,i-1,j-1,k-1)
sys.stdout.write(x[i-1])
elif mk[i][j][k]=='110':
printf(mk,x,i-1,j-1,k)
elif mk[i][j][k]=='101':
printf(mk,x,i-1,j,k-1)
elif mk[i][j][k]=='100':
printf(mk,x,i-1,j,k)
elif m