一开始想成排列组合了,弄得很麻烦,但其实和排列组合没啥关系。两层for循环遍历所有可能情况,满足的情况放在if条件中,用一个cnt计数器记录所有可以的情况,最后输出cnt即可。
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
while(sc.hasNext()) {
int k = sc.nextInt();
int s = sc.nextInt();
int cnt = 0;
for (int i = 0; i <= k; i++) {
for (int j = 0; j <= k; j++) {
if((i+j) <= s && (s-(i+j)) <= k) cnt++;
}
//这会把所有情况全部集合起来,跟排列组合一点关系没有
}
System.out.println(cnt);
}
}
}