Problem 114 「ブロックの組み合わせ方の数え上げ その1」 †

直列な50マスを特定の規則のもと赤ブロックで埋めるとき何通りの埋め方があるか計算する問題。
詳細はリンク先参照のこと。



解法
手前から埋めていく動的計画法で片が付きます。
計算量は48回。


search(52,[_,_,Sum],_,_):-!,write([ans,Sum]).
search(Len,[X1,X2,X3],Sum,Add):-
 	!,
	Add1 is Add+X1,
	Sum1 is Sum+Add,
	Len1 is Len+1,
	write([Len1,Sum1,Add1]),nl,
	search(Len1,[X2,X3,Sum1],Sum1,Add1).

main114:-
	search(4,[1,1,1],1,1).

タグ:

+ タグ編集
  • タグ:

このサイトはreCAPTCHAによって保護されており、Googleの プライバシーポリシー利用規約 が適用されます。

最終更新:2014年03月06日 10:45