zoukankan      html  css  js  c++  java
  • PERMUTATION


    DESCRIPTION:
    从1到n一共n个数字组成的所有排列中,逆序对个数为k的有多少个。
    INPUT:
    第一行为一个整数T(<10),以下T 行,每行两个整数n(<1000),k(<1000),意义如题目所述。
    OUTPUT:
    对每组数据输出答案对10000 取模后的结果
    SAMPLE INPUT:
    1
    4 1
    SAMPLE OUTPUT:
    3

    #include<cstdio>
    using namespace std;
    int main()
    {
        freopen("permut.in","r",stdin);
        freopen("permut.out","w",stdout);
        int t(0),n(0),k(0);
        static int f[1001][1001];
        for(int i=0;i<=1000;i++)
            f[i][0]=1;
        for(int i=1;i<=1000;i++)
            for(int j=1;j<=1000;j++)
            {
                if(i>j)f[i][j]=(f[i-1][j]+f[i][j-1])%10000;
                else f[i][j]=(f[i-1][j]+f[i][j-1]-f[i-1][j-i]+10000)%10000;
            }
        scanf("%d",&t);
        while(t)
        {
            t--;
            scanf("%d%d",&n,&k);
            printf("%d
    ",f[n][k]);
        }
        return 0;
    }
  • 相关阅读:
    Oracle进程
    Oracle 内存管理
    oracle 数据文件管理
    Oracle表空间
    EM配置问题
    Oracle 常用命令
    Oracle体系结构
    Orcale 数据加载
    Oracle学习笔记(1)
    设计模式-23种参考模式
  • 原文地址:https://www.cnblogs.com/JebediahKerman/p/6011273.html
Copyright © 2011-2022 走看看