我试图解决一个面试问题:
给定n*n的矩阵.每个单元格包含0,1,-1.0表示没有钻石,但有一条路径.1表示在该位置处存在菱形,其中路径-1表示路径被阻挡.现在你从0,0开始到达最后一个单元格,然后返回到0,0收集最大的钻石数量.在前往最后一个单元格时,您只能向右和向下移动.返回时,您只能向左和向上移动.
我已经解决了这个问题,但我不确定这是最佳解决方案.我在做什么
有关正确性的任何建议吗?我写了代码,如果需要,我会分享.
我有一个帮助脚本,我想从主脚本调用它作为服务器.这个主要脚本如下所示:
Class Stuff():
def __init__(self, f):
self.f = f
self.log = {}
def execute(self, filename):
execfile(filename)
if __name__ == '__main__':
#start this script as server
clazz = Stuff()
#here helper_script name will be provided by client at runtime
clazz.execute(helper_script)
Run Code Online (Sandbox Code Playgroud)
现在,客户端将通过向主脚本(服务器)提供其名称来调用此帮助程序脚本.执行后我想在主脚本中保留辅助脚本的变量(即:a,b).我知道一种方法是将这些变量从辅助脚本返回到主脚本.但是有没有其他方法可以保留助手脚本的所有变量.这是帮助脚本的样子:
import os
a = 3
b = 4
Run Code Online (Sandbox Code Playgroud)
我尝试使用execfile和subprocess.
这些语言之间有什么区别 -
algorithm ×1
c++ ×1
c++11 ×1
correctness ×1
dynamic ×1
gcc ×1
greedy ×1
matrix ×1
python ×1
python-2.7 ×1
subprocess ×1