当前位置: 首页 > news >正文

约定(模拟赛2 T3)

题目描述

小A在你的帮助下成功打开了山洞中的机关,虽然他并没有找到五维空间,但他在山洞中发现了无尽的宝藏,这个消息很快就传了出去。人们为了争夺洞中的宝藏相互陷害,甚至引发了战争,世界都快要毁灭了。小A非常地难过,小A希望能成为天下第一的高手来拯救世界,于是他决定来到著名的X城,他遇到了许多新事物和前所未有的挑战,背井离乡的日子难免有忧伤和孤单,不过幸运的是小A结识了志同道合的小雪,因为彼此的存在他们不再孤单。在星空下,小A和小雪做了一个约定:一起寻找拯救这崩坏世界的方法。这时出现了一位神秘人告诉小A他能够帮助实现小A的梦想,但现在有一个问题。
神秘人有一套魔法牌,一共有 𝑛n 张,分别标着 11 到 𝑛n 的编号。我们现在可以把这 𝑛n 张牌随意排列,每两个相邻的数之间都有着大小关系,这样每种排列都会有 𝑛−1n−1 个关系,我们把前一个数小于后一个数这种关系称为“有效关系”,而如果说一种排列恰好有 𝑘k 个“有效关系”,那么摆出这样的排列就能提供 11 点灵力值,同一种排列只会提供一次灵力值。现在神秘人需要知道通过尝试不同的排列最多能够获得多少灵力值,这将影响着他下一步该如何帮助小A。
由于这个问题的答案可能非常的大,小A根本算不明白,而神秘人只会魔法,于是小A希望你能帮他解决这个问题。答案对2012取模。

输入描述

第一行两个整数 𝑛,𝑘

输出描述

一个整数表示答案。

输入样例
31

输出样例
4

用dp紫腚~~~~~~~~~~~~~~能过(不过我直接chishi)

这道题本蒟蒻用dp轻松AC了

直接上AC代码

#include<bits/stdc++.h>
using namespace std;
int n,k;
int dp[1005][1005];
int main(){cin>>n>>k;for(int i=0;i<=n;i++) dp[i][0]=1;for(int i=1;i<=1000;i++){for(int j=1;j<=1000;j++){dp[i][j]=dp[i-1][j-1]*(i-j)+dp[i-1][j]*(j+1);dp[i][j]%=2012;}} cout<<dp[n][k];return 0;
}

http://www.lryc.cn/news/407496.html

相关文章:

  • Java推送xml数据进行http请求
  • Docker安装 OpenResty详细教程
  • 前端位运算运用场景小知识(权限相关)
  • 【云原生】Kubernetes中的DaemonSet介绍、原理、用法及实战应用案例分析
  • 使用框架构建React Native应用程序的最佳实践
  • Godot入门 02玩家1.0版
  • Docker-Compose配置zookeeper+KaFka+CMAK简单集群
  • Python中,集合几种基本运算
  • netsuite查询货品库存
  • Java 实现分页的几种方式详解
  • vite构建vue3项目hmr生效问题踩坑记录
  • 区块链赋能民生大数据
  • 10 Vue 特性要点
  • ESP32和mDNS学习
  • 学习SQL如何使用CASE语句查询分析设备状态
  • Gartner发布2024年零信任网络技术成熟度曲线:20项零信任相关的前沿和趋势性技术
  • React hook 之 useState
  • jenkins中shell脚本中使用构建参数化Groovy变量的四种方式
  • Robot Operating System——ParameterEventHandler监控Parameters的增删改行为
  • 计算机网络(Wrong Question)
  • Docker+consul容器服务的更新与发现
  • 全网最详细!! Linux 安装、配置教程
  • cocos creator 3学习记录01——如何替换图片
  • 【Android Compose】ListView效果
  • 【Pytorch实战教程】Pytorch中.detach()的详细介绍
  • AR 眼镜之-充电动画定制-实现方案
  • AJAX-XMLHttpRequest 详解
  • 内容管理系统 Contentful 与 Baklib
  • [Mysql-视图和存储过程]
  • Linux下C++静态链接库的生成以及使用