1401 逆序统计(递推)
来源:互联网 发布:android源码在线 编辑:程序博客网 时间:2024/06/15 16:59
1401 逆序统计
时间限制: 1 s
空间限制: 128000 KB
题目等级 : 钻石 Diamond
题解
查看运行结果
题目描述 Description
我们说(i,j)是a1,a2,…,an的一个逆序对当且仅当j>i且ai>aj。例如2,4,1,3,5的逆序对有3个,分别为(1,3),(2,3),(2,4)。现在已知N和K,求1..N的所有特定排列,这些排列的逆序对的数量恰好为K。输出这些特定排列的数量。
例如N=5,K=3的时候,满足条件的排列有15个,它们是:
1,2,5,4,3 1,3,4,5,2 1,3,5,2,4 1,4,2,5,3 1,4,3,2,5
1,5,2,3,4 2,1,4,5,3 2,1,5,3,4 2,3,1,5,4 2,3,4,1,5
2,4,1,3,5 3,1,2,5,4 3,1,4,2,5 3,2,1,4,5 4,1,2,3,5
输入描述 Input Description
输入第一行有两个整数N和K。其中(N<=100,K<=N*(N-1)/2)
输出描述 Output Description
将1..N的逆序对数量为K的特定排列的数量输出,为了避免高精度计算,请将结果mod10000后再输出
样例输入 Sample Input
【样例输入1】
5 3
【样例输入2】
10 7
【样例输入3】
10 10
样例输出 Sample Output
【样例输出1】
15
【样例输出2】
4489
【样例输出3】
1670
program df;
var i,j,n,m,x,y,z,k,t:longint;
f:array[0..100,0..10000] of longint;
begin
readln(n,k);
for i:=1 to n do
f[i,0]:=1;
f[2,1]:=1;
for i:=3 to n do
for j:=0 to (i*(i-1)) div 2 do
f[i,j]:=(f[i,j-1]+f[i-1,j]-f[i-1,j-i]+10000) mod 10000;
writeln(f[n,k]);
end.
- 1401 逆序统计(递推)
- 统计问题(递推)
- hdu 统计问题 (递推)
- ACMSTEP 3.1.5 统计问题 //递推
- HDU 2563 统计问题 递推
- HDU 2563 统计问题【递推】
- HDOJ 题目统计问题(递推)
- HDU-2563 统计问题 递推
- HDOJ 2563 统计问题(递推)
- HDU 2563 统计问题(递推)
- hdu 2563 -统计问题 【递推关系】
- HDU 2563 统计问题 (递推)
- hdu 2563 统计问题(递推)
- [HDU 2563]统计问题[递推]
- hdu2563 统计问题(递推)
- HDU 2563 统计问题【简单递推】
- hdu 2563 -统计问题 【递推关系】
- hdu 2563 统计问题(递推)
- 深入浅出MyBatis-快速入门
- GetMemory的典型例子
- 问题描述 给定一个序列,每次询问序列中第l个数到第r个数中第K大的数是哪个。 输入格式 第一行包含一个数n,表示序列长度。 第二行包含n个正整数,表示给定的序列。 第三个包含一个正整数m,表
- AndroidStudio插件开发(Hello World篇)
- Step by Step,用JAVA做一个FLAPPYBIRD游戏(四)
- 1401 逆序统计(递推)
- 新手学习编程的最佳方式是什么?
- 给App整体设置activity的进入退出动画
- 欢迎使用CSDN-markdown编辑器
- CAD快捷命令
- 获取单选框的值并判断
- Rust入门之一
- 归并排序
- POJ 2349 Arctic Network