%I#12 2019年8月6日02:44:59
%S 0,1,6,28145876613949120442089442090048629911583558944,
%电话:758626628510620772800415931159207525489854721216433327530260689,
%电话:77998955449242014819801534915599929639603069831200062243166446645520021136934966182620144044314950422200263131557558810328063195147744
%N将大小为N的循环列表转换为节点的相邻节点合并操作的总数。
%F a(n)=n+n*a(n-1)对于n>=3,a(1)=0,a(2)=1。
%F对于n>1,a(n)=exp(1)*n*Gamma(n,1)-3*n/2.-_Vaclav Kotesovec_,2019年8月5日
%e对于n=1,a(1)=0-没有操作,因为它已经是一个节点。
%e对于n=2,a(2)=1-2个节点只有1个可能的收缩。
%e对于n=3,a(3)=6。考虑一个由3个节点A、B、C和3条边(A、B)、(B、C)、(C、A)组成的无向循环列表。最初,可以收缩3条边中的任何一条,以获得2节点列表-这里有3个操作。然后,每个2节点列表需要再压缩1次才能成为平凡图,从而提供3个额外的操作,求和为a(3)=3+3=6。
%e通常,首先收缩n条边中的一条,得到大小为n-1的列表,然后收缩大小为n-1的列表。因此,每个初始节点的选择都有1+a(n-1)个操作;n个选择的总和为a(n)=n+n*a(n-1)。
%t展平[{0,表[E*n*Gamma[n,1]-3/2*Gamma[n+1],{n,2,25}]}](*_Vaclav Kotesovec_,2019年8月5日*)
%o(C)int CircularListContractOps(int n){如果(n<=1)返回0;如果(n==2)返回1;返回n*(CircularListContractOps(n-1)+1);}
%o(PARI)a(n)=如果(n<=2,n-1,n+n*a(n-1));\\_Joerg Arndt_2019年8月4日
%K nonn公司
%氧1,3
%2019年8月4日,卡拉奇
|