题意  数字串a[0---n-1], 通过不断的重复组成了 b[0,---l-1]l<10^18,

让你计算出 长度小于等于k的最长非递减子序列,满足,取得第 i 个取得是 L1 第i+1个取得是L2  ------ L1/n +1 = L2, 通过这个我们先对原数组进行排序,排完后使用vector去计算dp[i][j]

及时 第i个数放在第j位的方案总数, 然后我们依次枚举放1 个 2 个3个。。。k, 贡献分别是  l/n,l/n-1....1,这样再枚举那最后的余下的那一些。

#include <iostream>
#include <algorithm>
#include <cstdio>
#include <vector>
#include <string.h>
using namespace std;
const int maxn=;
typedef long long LL;
const LL mod=;
int A[maxn],B[maxn],C[maxn],D[maxn],E[maxn];
vector<LL>G[maxn];
void init(int n,int k)
{
for(int i=; i<=n; i++)
{
G[i].clear();
for(int j=; j<=k; j++)G[i].push_back();
}
}
int main()
{
int n,k;LL l;
while(scanf("%d%I64d%d",&n,&l,&k)==)
{
init(n,k);
for(int i=;i<n; i++)
{
scanf("%d",&A[i]);
B[i]=A[i];
}
sort(B,B+n);
int ge=;
C[]=;
for(int i=; i<n;i++)
{
if(B[i]==B[ge-])C[ge-]++;
else{
B[ge++]=B[i]; C[ge-]=;
}
}
LL num=l/n;
LL ans=l%mod;
LL uu=min(k*1LL,num+);
int lest=l%n,numoflest=;
sort(A,A+lest);
if(lest>){
E[]=; for(int i=; i<lest; i++)
{
if(A[i]==A[numoflest-])E[numoflest-]++;
else{
A[numoflest++]=A[i]; E[numoflest-]=;
}
}
}
for(int i=; i<ge; i++)G[i][]=C[i];
for(int i=; i<=k; i++)
{
long long d=,S=;
int loc=;
for(int j=; j<ge; j++)
{
d+=G[j][i-];
d=d%mod;
G[j][i]=(d*C[j])%mod;
S=(S+G[j][i])%mod;
while(loc<lest&&A[loc]<B[j])loc++;
if(loc<lest && A[loc] == B[j])
{
if(i<=uu)
ans=(ans+(d*E[loc])%mod )%mod;
}
}
if( num - i + > )
{
long long gg=( S * ( ( num - i + )%mod ) )%mod;
ans=(ans+gg)%mod;
}
}
printf("%I64d\n",ans);
}
return ;
}

最新文章

  1. Swift 之模糊效果(毛玻璃效果,虚化效果)的实现
  2. WinForm常用事件
  3. 删除数组中重复的元素(JSON)
  4. [Java 基础]接口
  5. 转载:有关SQL server connection Keep Alive 的FAQ(3)
  6. sessionStorage 、localStorage 和 cookie 之间的区别
  7. static和public
  8. SPRING IN ACTION 第4版笔记-第八章Advanced Spring MVC-004-Pizza例子的用户流程(flowExecutionKey、_eventId_phoneEntered、flowExecutionUrl )
  9. GitCam一款Gif动画制作软件
  10. Android开发手记(10) 下拉菜单Spinner
  11. Git使用总结-so easy
  12. 如何简单而优雅地升级Visual NMP中的PHP版本
  13. leetcode 104 Maximum Depth of Binary Tree二叉树求深度
  14. 关于python的装饰器(初解)
  15. C#核心基础--类的声明
  16. semantic-ui 分割线
  17. 配置JAVA开发环境
  18. PID file /run/zabbix/zabbix_server.pid not readable (yet?) after start. 报错解决
  19. Python Tutor
  20. STM32F4 Timer Internal Trigger Connection

热门文章

  1. django--admin组件
  2. 洛谷P2329 栅栏 [SCOI2005] 搜索
  3. 基于sendEmail的简单zabbix邮件报警
  4. 使用IntelliJ IDEA创建Maven聚合工程、创建resources文件夹、ssm框架整合、项目运行一体化
  5. DNS搜索
  6. du 查看文件大小
  7. lsof 命令
  8. 微信小程序首支视频广告片发布
  9. 001-分布式理论-CAP定理
  10. wx.Panel