HDU 3664 Permutation Counting(DP)

题目链接

弱爆啦,组合弱爆了,反正是没想出来怎么搞这个题,其实这个公式不难推啊,反正就是没推出来。今天队内赛,实在是没办法了,暴力写了个DFS,先把10以内的打出表来,发现类似杨辉三角的一个表,推不出公式,只能找规律了。也推公式,也找规律,中间还走会了神,发现borad上过的人N多了,有些着急,这样应该不难吧。。。又推了会,还是没想出来,找规律吧,估摸着应该是和上两项有关系,自己写了小程序测试一下几个数据和scf讨论了下,貌似真的是找出规律了。。。然后时间不多了,好在代码很短,马上快结束了,乱写了,最后在各种乱搞+思考之下,和暴力的写的数据对上了,中间错了2次,好在在4:53的时候终于AC了。。。。

公式的意义:p[i][j] = (i-j)*p[i-1][j-1] + (j+1)*p[i-1][j];对最后一个数进行讨论,最后一个数字,如果和a[i] > i的位置交换,最后一个数一定比那个位置大,所以之前就必须有j个a[i] > i的数,所以方案数为(j+1)*p[i-1][j] +1代表最后一个数的位置,如果最后一个数和a[i] < i的位置交换共有(i-1) - (j-1)个 ,则方案数为(i-j)*p[i-1][j-1]。

 1 #include <cstdio>
 2 #include <cstring>
 3 using namespace std;
 4 #define MOD 1000000007
 5 __int64 p[1001][1001];
 6 int main()
 7 {
 8     int i,j,n,k;
 9     for(i = 1;i <= 1000;i ++)
10     {
11         p[i][0] = 1;
12         p[i][i-1] = 1;
13     }
14     for(i = 3;i <= 1000;i ++)
15     {
16         for(j = 1;j <= (i+1)/2-1;j ++)
17         {
18              p[i][i-1-j] = p[i][j] = (((i-j)*p[i-1][j-1])%MOD+((j+1)*p[i-1][j])%MOD)%MOD;
19         }
20     }
21     while(scanf("%d%d",&n,&k)!=EOF)
22     {
23         printf("%I64d\n",p[n][k]);
24     }
25     return 0;
26 }

转载于:https://www.cnblogs.com/naix-x/archive/2012/10/14/2723325.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/274566.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

如何在工作中打造影响力,带动同事?

大家好&#xff0c;我是若川。持续组织了近一年的源码共读活动&#xff0c;感兴趣的可以 加我微信 ruochuan12 参与&#xff0c;每周大家一起学习200行左右的源码&#xff0c;共同进步。同时极力推荐订阅我写的《学习源码整体架构系列》 包含20余篇源码文章。历史面试系列。另外…

谷歌maps菜单语言设置_Google Maps:拯救未来之路— UX案例研究

谷歌maps菜单语言设置I have a lousy sense of direction, so Google Maps has always been my right-hand app. On a whim last year, I decided to skip the beach and sunburn and head to Budapest for spring break. That’s when Google Maps became my best friend.我的…

this和prototype

this出现在构造函数中&#xff0c;更多的是表示一种特有的属性&#xff1b; prototype主要用于拓展函数的属性&#xff0c;方法。 在函数类实例化的时候&#xff0c;this的属性需要复制相应的副本&#xff0c;prototype不用。 function Blog(title,content) { this.titletitle;…

1万小时后,我从外包走进了字节跳动,现在出了一本书,文末送书!

谨以此书献给相信“努力有用”的你by 大史不说话《 前端跨界开发指南&#xff1a;JavaScript工具库原理解析与实战》先做个自我介绍我是大史不说话&#xff0c;是一名前端工程师&#xff0c;一个相信“努力有用”的、不太聪明的、行动力还可以的程序员。曾经因为一篇《10000小时…

视觉设计师跟平面设计_使设计具有视觉吸引力

视觉设计师跟平面设计Interaction Design is very gratifying.交互设计非常令人满意。 From fast critical thinking to extracting ideas in tangible forms within the team is sure fun and challenging.从快速的批判性思维到在团队内部以有形的形式提炼想法&#xff0c;无…

ExtJs4 笔记 Ext.tab.Panel 选项卡

本篇讲解选项卡控件。 一、基本选项卡 首先我们来定义一个基本的选项卡控件&#xff0c;其中每个Tab各有不同&#xff0c;Tab的正文内容可以有三种方式获取&#xff1a; 1.基本方式:通过定义html和items的方式。 2.读取其他html的信息:通过设置contentEl就可以获取其他html的信…

一直刷不动算法题,怀疑人生?试试五毒掌法!

大家好&#xff0c;我是若川。持续组织了近一年的源码共读活动&#xff0c;感兴趣的可以 加我微信 ruochuan12 参与&#xff0c;每周大家一起学习200行左右的源码&#xff0c;共同进步。同时极力推荐订阅我写的《学习源码整体架构系列》 包含20余篇源码文章。历史面试系列。另外…

还在用开发者工具上传小程序? 快来试试 miniprogram-ci 提效摸鱼

1. 前言大家好&#xff0c;我是若川。持续组织了近一年的源码共读活动&#xff0c;感兴趣的可以 加我微信 ruochuan12 参与&#xff0c;每周大家一起学习200行左右的源码&#xff0c;共同进步。同时极力推荐订阅我写的《学习源码整体架构系列》 包含包含jQuery、underscore、lo…

ListView几个比较特殊的属性

Android:stackFromBottom"true" 设置该属性之后你做好的列表就会显示在列表的最下面&#xff0c;值为true和false android:transcriptMode"alwaysScroll" 要用ListView或者其它显示大量Items的控件实时跟踪或者查看信息&#xff0c;并且希望最新的…

超级玛丽马里奥版下载_将超级马里奥赋予生命

超级玛丽马里奥版下载Have you ever seen a zoetrope? If today’s sophisticated computer animation is the latest evolution of the form, then the remarkable zoetrope is a crucial ancestor; the transitional form between the drawing and the animation.等皆你见过…

如何在繁重的工作中持续成长?

大家好&#xff0c;我是若川。持续组织了近一年的源码共读活动&#xff0c;感兴趣的可以 加我微信 ruochuan12 参与&#xff0c;每周大家一起学习200行左右的源码&#xff0c;共同进步。同时极力推荐订阅我写的《学习源码整体架构系列》 包含20余篇源码文章。历史面试系列。另外…

Mono for Android 对话框 倒计时

UI调度&#xff1a;public class Dispatcher : Handler { public override void HandleMessage(Message msg) { var ai msg.Obj as ActionItem; if (ai ! null) { try { …

熊kong作品资源链接_Kong雀技术:向世界展示您的设计作品

熊kong作品资源链接The door opened and I entered the bedroom of an apartment I was looking to rent. No furniture or items inside, it was almost empty except for a frame in the wall. It was a photo of a peacock. As I stared at it, I could not shake one clear…

漫谈前端工程化基建和架构设计 | 留言送书

大家好&#xff0c;我是若川。持续组织了近一年的源码共读活动&#xff0c;感兴趣的可以 加我微信 ruochuan12 参与&#xff0c;每周大家一起学习200行左右的源码&#xff0c;共同进步。本文留言抽奖送书&#xff0c;具体规则看文末。透过工程基建&#xff0c;架构有迹可循。前…

oracle中 rownum与rowid的理

一、 Oracle分页查询 我们先看学习一下oracle分页查询的语法示例&#xff0c;然后在具体学习用rownum的原理。 /*从第1条开始&#xff0c;每次选N个&#xff0c;从第1M个开始每次选N个*/ /**/ select t2.* from (select rid from (select r.rid, rownum linenum from (select r…

设计模式 日志系统设计_模式:我们设计系统的故事

设计模式 日志系统设计Design Patterns are some of the most over-used concepts in design today. And we all know what happens when you have some ideas all over the place. We start repeating them like parrots and applying them to everything, therefore distorti…

前端好还是后端好,看看7年前端和后端怎么说

大家好&#xff0c;我是若川。持续组织了近一年的源码共读活动&#xff0c;感兴趣的可以 加我微信 ruochuan12 参与&#xff0c;每周大家一起学习200行左右的源码&#xff0c;共同进步。同时极力推荐订阅我写的《学习源码整体架构系列》 包含20余篇源码文章。历史面试系列。另外…

提升UI技能的5个步骤

element ui 步骤重点 (Top highlight)What to do when you know how to use the software and know the basics of designing interfaces? There are a few simple things that you can do to take your skills to the next level, and you don’t need to invest in expensiv…

空降进阿里的 P10 都是什么人

周末见了几个朋友&#xff0c;吃饭时聊到他们前老板郭东白&#xff08;阿白&#xff09;&#xff0c;对了&#xff0c;我朋友在速卖通&#xff0c;他说阿白是 14 年来的阿里&#xff0c;直接就空降进了他们部门&#xff0c;当上首席架构师&#xff0c;后来又升到了 CTO&#xf…

linux下练习 c++ 关联式容器multimap特性

/* multimap特性 key可以重复 不支持下标访问 */ #include<iostream> #include<string> #include "print.h" #include<map> using namespace std; typedef pair<int,string> pairmp; typedef multimap<string,double> MS;int main() …