zoukankan      html  css  js  c++  java
  • hdu1799-循环多少次?-(组合恒等式)

    循环多少次?

    Time Limit: 3000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)
    Total Submission(s): 6539    Accepted Submission(s): 2524


    Problem Description
      我们知道,在编程中,我们时常需要考虑到时间复杂度,特别是对于循环的部分。例如,
    如果代码中出现
    for(i=1;i<=n;i++) OP ;
    那么做了n次OP运算,如果代码中出现
    fori=1;i<=n; i++)
      for(j=i+1;j<=n; j++) OP;
    那么做了n*(n-1)/2 次OP 操作。
    现在给你已知有m层for循环操作,且每次for中变量的起始值是上一个变量的起始值+1(第一个变量的起始值是1),终止值都是一个输入的n,问最后OP有总共多少计算量。
     
    Input
      有T组case,T<=10000。每个case有两个整数m和n,0<m<=2000,0<n<=2000.
     
    Output
      对于每个case,输出一个值,表示总的计算量,也许这个数字很大,那么你只需要输出除1007留下的余数即可。
     
    Sample Input
    2 1 3 2 3
     
    Sample Output
    3 3
    组合数公式:
    组合恒等式:C(n,m) = C(n-1,m) + C(n-1,m-1)
     1 #include <iostream>
     2 #include<stdio.h>
     3 #include <algorithm>
     4 #include<string.h>
     5 #include<cstring>
     6 #include<math.h>
     7 #include<map>
     8 #include<string>
     9 #define inf 0x3f3f3f3f
    10 #define ll long long
    11 using namespace std;
    12 int c[2001][2001];
    13 const int p=1007;
    14 
    15 void init()
    16 {
    17     memset(c,0,sizeof(c));
    18     for(int i=0;i<2001;i++)
    19         c[i][0]=1;
    20     for(int i=1;i<2001;i++)
    21         for(int j=1;j<=i;j++)
    22             c[i][j]=( c[i-1][j-1]+c[i-1][j] )%p;
    23 }
    24 int main()
    25 {
    26     init();
    27     int t;scanf("%d",&t);
    28     while(t--)
    29     {
    30         int n,m;
    31         scanf("%d%d",&m,&n);
    32         printf("%d
    ",c[n][m]);
    33     }
    34     return 0;
    35 }
  • 相关阅读:
    AUDIT审计的一些使用
    HOW TO PERFORM BLOCK MEDIA RECOVERY (BMR) WHEN BACKUPS ARE NOT TAKEN BY RMAN. (Doc ID 342972.1)
    使用BBED理解和修改Oracle数据块
    Using Class of Secure Transport (COST) to Restrict Instance Registration in Oracle RAC [ID 1340831.1]
    调试利器GDB概念
    第4章 思科IOS
    第3章 ip地址和子网划分
    第2章 TCPIP
    2020年阅读过的黑客资源推荐篇
    第1章 计算机网络
  • 原文地址:https://www.cnblogs.com/shoulinniao/p/10389295.html
Copyright © 2011-2022 走看看