我提出的解決方案檢查左側和右側,確保左側平整,右側適合所有可能的分區。如何在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 –