如何n在Java中创建一个随机整数,介于1“k线性递减分布”之间,即1最有可能,2不太可能,3不太可能,...,k最不可能,并且概率线性下降,如下所示:

我知道这个主题已经有几十个主题了,我很抱歉创建了一个新主题,但我似乎无法从它们中创建我需要的内容。我知道使用import java.util.*;,代码
Random r=new Random();
int n=r.nextInt(k)+1;
1在和之间创建一个随机整数k,均匀分布。
GENERALIZATION:任何用于创建任意分布的整数的提示,即f(n)=some function, P(n)=f(n)/(f(1)+...+f(k))),也将不胜感激,例如:
.