【NOIP2015模拟11.5】俄罗斯套娃题解

该博客详细解析了NOIP2015模拟赛中的一道俄罗斯套娃问题,涉及动态规划(DP)的解题策略。博主指出,对于60%的数据,解决方案是计算插入每个数时逆序对的数量,并使用动态转移方程fi,j=∑k=0min(j,i−1)fi−1,j−k。为了应对更大的数据规模(n≤3000),需要使用前缀和进行优化,将时间复杂度降低到O(nk)。博主遗憾地提到,比赛中因忽视负数模运算和滚动数组导致得分不理想,提醒读者注意这些细节。" 114503169,7981032,SpringMVC拦截器实战:用户登录验证,"['java', 'spring', 'mvc', '拦截器']
摘要由CSDN通过智能技术生成

Description

在这里插入图片描述

Input

在这里插入图片描述

Output

在这里插入图片描述

Sample Input

10 1000

Sample Output

3628800

Data Constraint

在这里插入图片描述

Solution

一道比较简单的dp。

对于60%的数据

f i , j f_{i,j} fi,j表示插入 i i i这个数,逆序对个数为 j j j的方案数。
那么插入 i i i这个数所能产生的逆序对个数为 k k k, k ϵ [ 0 , i − 1 ) k\epsilon[0,i-1) kϵ[0,i1)。很容易理解,因为你前面已经插入了1~i-1里的数,你插入在哪一个位置都行,比 i i i小的数最少有0个,做多有<

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值