The standard notation is XdYkN. Your question is P(XdYkN >= A). For X=10, Y=10, N=3;
To make sure I understand this the same way as you - XdYkN is the sum of N highest numbers out of X casts of an Y-sided die, right?
For N=1 I listed iterative analytical formulas in my
reply to the previous question. Iterative formulas will give precise (up to rounding errors) probabilities and are best left for a simple computer program to crunch.
For a general case this matlab/octave program will compute P(XdYkN = A)*Y
X which are integer numbers and can be recoded in a language that supports arbitrary-precision arithmetic to get really big numbers. Standard floating point "double precision" will be exact up to about 15d10.
function R=P_XdYkN(X, Y, N, A)
%
R=0;
[high, done]=start_high(X, Y, N, A);
while(!done)
R=R+combo(high, X, N);
[high, done]=next_high(high, X, N, A);
end;
function R=combo(high, X, N)
%
n=1;
mult(n)=1;
for i1=2:N
if high(i1)==high(i1-1)
mult(n)=mult(n)+1;
else
n=n+1;
mult(n)=1;
end;
end;
R=1;
for i1=1:(n-1)
R=R*nchoosek(X-sum(mult(1:(i1-1))), mult(i1));
end;
if high(N)>1
R=R*comb_tail(mult(n), high(N), X-sum(mult(1:(n-1))) );
end;
function t=comb_tail(k, n, x)
%
t=0;
for i1=0:(x-k)
t=t+nchoosek(x, i1)*(n-1)^i1;
end;
function [high, done]=start_high(X, Y, N, A)
%
if (A<N)||(A>N*Y)
done=1;
return;
end;
done=0;
A1=A;
for i1=1:N
if A1>Y+N-i1-1
high(i1)=Y;
A1=A1-Y;
else
high(i1)=A1-N+i1;
A1=A1-high(i1);
end;
end;
function [high, done]=next_high(high, X, N, A)
%
done=1;
for i1=N-1:-1:1
[high, done]=next_high1(high, X, N, A, i1);
if done==0
break;
end;
end;
function [high, done]=next_high1(high, X, N, A, k)
%
done=1;
if high(k)-high(N)>1
high(k)=high(k)-1;
A1=A-sum(high(1:k));
for i1=(k+1):N
if A1>high(k)+N-i1-1
high(i1)=high(k);
A1=A1-high(k);
else
high(i1)=A1-N+i1;
A1=A1-high(i1);
end;
end;
done=0;
break;
end;
function P_XdYkN_sample_print()
%
format long
S=1;
for i1=3:30
disp(S=S-P_XdYkN(10, 10, 3, i1)/10^10);
end;
A check for the case P(10d10k3 >= A) confirms that all 10 digits for all A are the same as in one of the previous posts.
It is open to debate if a computer program that produces precise (in rational numbers) probabilities could be called a formula. For sufficiently large numbers there definitely should exist approximations properties of which should be easier to analyse.