with(combinat); A := proc(n, q) option remember; if q = 0 then return n end if; add(A(m, q - 1) + binomial(m - 1, q - 1)*10^q*n, m = 1 .. n - 1) end; AZU := proc() option remember; local LHS, RHS; LHS := AGFSYM - z/(1-z)^2; RHS := u*z/(1-z)*AGFSYM + z/(1-(1+10*u)*z)^2-z/(1-z)^2; solve(LHS=RHS, AGFSYM); end; AGF := (n, q) -> coeftayl(coeftayl(AZU(), u=0, q), z=0, n); X := n -> 10/9*n*11^n - 11/81*(11^n-2^n); ENUM := proc(n) option remember; local dset, dlst, val, res; res := 0; for dset in powerset(n) do dlst := sort([seq(el-1, el in dset), n]); val := add(dlst[p]*10^(p-1), p=1..nops(dlst)); res := res + val; od; res; end;