我有4000,000个数据文件。我开始用python编程。我想找到一条7到1的路径。但是我有一些条件:
1.-路径必须是降序的,例如:7,6,5 .... 1(希望是连续的),但可以是7,6,3,1。主要目标是递减(第二列)。想象一下,线之间的底物必须为1才能识别它们
2。-路径一定不能向上。例如:如果我在7、6、5 ..中,则6不正确。下一个数字5必须是数字4,或其他更低的数字,但不能大于。我想像一下,行之间的底物必须为-1才能识别
3.-可以重新编号。例如,如果我在7中,则在传递6之前我可以在7中有一些行,这样就可以了。请记住,主要目标不是上升,而是下降。我想象结果将是恒定的0或1。
4.-如果此条件之一为假,则: a)重新开始,但在第一行中为7的地方不行。我的意思是,在第二行中为7的地方开始(文件中的第二个7) 如果没有以7开头的路径,则以6开头,依此类推,直到找到到达1的路径。 b)或从中断过程的最后一行开始。 (我不知道该选项是否有效)
在简历中,我想找到从7到1的有效降序路径,并且不要向上移动。
输入文件为:
1 6
2 6
3 6
4 7
5 7
6 3
7 3
8 5
9 7
10 6
...如此等等
输出文件:
45 7
46 7
47 7
48 7
49 6
50 6
51 5
52 5
53 4
54 3
55 2
56 1
或
50 7
51 6
52 5
53 4
54 3
55 2
56 1
那么,您能指导我如何执行此过程吗?
非常感谢。
答案 0 :(得分:0)
我将创建一个finite-state machine,其中每个数字都有一个状态(7个状态,从1到7)。在每一行:
.add_number(parsed_number)
。此函数记住数字并返回三个可能结果之一: