我提出的解决方案检查左侧和右侧,确保左侧平整,右侧适合所有可能的分区。如何在prolog中编写unflatten函数?
当我检查双嵌套元素时,分区方程式有一些错误。
unflatten([],[]) :- !.
unflatten(flatList, [l1|lst]) :- !, unflatten(A, l1), unflatten(B, lst), append(A,B, flatList).
unflatten([l1|flatList], [l1]|lst]) :- unflatten(flatlist,lst).
unflatten([l1,l2|flatList], [[l1,l2]|lst]) :- !, unflatten(flatList,lst).
unflatten([flatList],flatList):- !.
我开始认为这是一个学术活动,你们必须做:)今天在第二个新的人在stackoverflow要求同样的事情。如果这是真的,你们似乎很不道德......见http://stackoverflow.com/questions/40709840/how-to-create-the-flatten-equation-in-prolog/40710166#40710166 –