1 条题解
-
0
C :
#include<stdio.h> int main() { int t,n,m,i; double s1,s2; scanf("%d",&t); while(t--) { scanf("%d%d",&n,&m); if(n<m) printf("0\n"); else { for(s1=1,i=n-m+1;i<=n;i++) s1*=i; for(s2=i=1;i<=m;i++) s2*=i; printf("%.lf\n",s1/s2); } } return 0; }
C++ :
#include<stdio.h> int main() { int t,n,m,i; double s1,s2; scanf("%d",&t); while(t--) { scanf("%d%d",&n,&m); if(n<m) printf("0\n"); else { for(s1=1,i=n-m+1;i<=n;i++) s1*=i; for(s2=i=1;i<=m;i++) s2*=i; printf("%.lf\n",s1/s2); } } return 0; }
Java :
import java.text.DecimalFormat; import java.util.ArrayList; import java.util.Collection; import java.util.Collections; import java.util.Scanner; import java.math.*; public class Main { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub Scanner in = new Scanner(System.in); String[] zong = in.nextLine().split(" "); int start=Integer.parseInt(zong[0]); for(int i=0;i<start;i++){ String[] nei= in.nextLine().split(" "); int[] zh=new int[2]; zh[0]=Integer.parseInt(nei[0]); zh[1]=Integer.parseInt(nei[1]); if(zh[0]<zh[1]){System.out.println("0");continue;} System.out.println(check(zh[0],zh[1])); } } private static BigInteger check(int a, int b) { // TODO Auto-generated method stub BigInteger c = new BigInteger("0"); c=jx(a).divide((jx(b).multiply(jx(a-b)))); return c; } public static int jc(int i){ if(i<0) //<0退出 return -1; else if(i==0) //0的阶乘=1 return 1; else//0继续递归 return i*jc(i-1); } public static BigInteger jx(int i){ BigInteger n = new BigInteger("1"); BigInteger n1 = new BigInteger("1"); for (int j = 1; j <= i; j++) { n1 = n.multiply(BigInteger.valueOf(j)); n = n1; } return n; } }
- 1
信息
- ID
- 1635
- 时间
- 1000ms
- 内存
- 32MiB
- 难度
- (无)
- 标签
- 递交数
- 0
- 已通过
- 0
- 上传者