POJ2279 Mr. Young's Picture Permutations 线性DP

【算法竞赛进阶指南】POJ 2279 - 杨老师的照相排列 - 线性dp计算方案数 题目描述 传送门:Acwing / POJ (注意在poj提交时换掉代码中的万能头) 有N个学生合影,站成左端对齐的k排,每排分别有N1,N2,…,Nk 个人。 (N1≥N2≥…≥Nk) 第1排站在最后边,第k排站在最前边。 学生的身高互不相同,把他们从高到底依次标记为1,2,…,N。 在合影时要求每一排从左到右身高递减,每一列从后到前身高也递减。 问一共有多少种安排... 阅读详情

POJ2279 Mr. Young's Picture Permutations

给定一个三角形,将n个身高不同的人按照左低右高、前低后高的排列,且行列都满足递增条件,求组成这样的三角形的个数

dp[a][b][c][d][e] 表示第1排a人2排b人3排c人4排d人5排e人的方案数,每次加人的可行方案都是在原有队形轮廓上

#include<stdio.h>
#include<string.h>
#include<vector>
#include<algorithm>
using namespace std;
int n,A[6];
vector<vector<vector<vector<vector<long long> > > > > dp;
long long dfs(int a,int b,int c,int d,int e)
{
    if(dp[a][b][c][d][e]>0) return dp[a][b][c][d][e];
    long long ans=0;
    if(a>0&&a>b) ans+=dfs(a-1,b,c,d,e);
    if(b>0&&b>c) ans+=dfs(a,b-1,c,d,e);
    if(c>0&&c>d) ans+=dfs(a,b,c-1,d,e);
    if(d>0&&d>e) ans+=dfs(a,b,c,d-1,e);
    if(e>0) ans+=dfs(a,b,c,d,e-1);
    return dp[a][b][c][d][e]=ans;
}
vector<long long>b;
vector<vector<long long> >c;
vector<vector<vector<long long> > >d;
vector<vector<vector<vector<long long> > > >e;
void getsize()
{
    for(int i1=0;i1<=A[1];++i1)
    {
        e.clear();
        for(int i2=0;i2<=A[2];++i2)
        {
            d.clear();
            for(int i3=0;i3<=A[3];++i3)
            {
                c.clear();
                for(int i4=0;i4<=A[4];++i4)
                {
                    b.clear();
                    for(int i5=0;i5<=A[5];++i5)
                    {
                        b.push_back(0ll);
                    }
                    c.push_back(b);
                }
                d.push_back(c);
            }
            e.push_back(d);
        }
        dp.push_back(e);
    }
    dp[0][0][0][0][0]=1ll;
}
int main()
{
    while(~scanf("%d",&n))
    {
        if(n==0) break;
        memset(A,0,sizeof(A));dp.clear();
        for(int i=1;i<=n;++i) scanf("%d",&A[i]);
        getsize();
        printf("%lld\n",dfs(A[1],A[2],A[3],A[4],A[5]));
    }
    return 0;
}

 

生信入门(六)——单细胞分析(Seurat) 生信入门(六)——单细胞分析(Seurat) 文章目录生信入门(六)——单细胞分析(Seurat)一、数据导入1、数据来源2、数据导入二、标准预处理1、QC和选择细胞进行进一步分析2、规范化数据3、识别高度可变的特征(特征选择)4、缩放数据三、主成分分析(PCA)1、线性降维2、确定数据集的“维度”四、聚类细胞五、非线性降维(UMAP/tSNE)六、寻找差异表达的特征(簇生物标志物) 一、数据导入 1、数据来源 点击此处下载数据 数据说明:分析10X Genomics提供的外周血单细胞(PBMC)数据集,有 阅读详情

相关推荐

【UGUI】二、Text(TMP) 文本

Text(TMP)、导入中文字库

天行健,君子以自强不息 3367

【POJ 2279】Mr. Young’s Picture Permutations【线性DP】

题目: 有N个学生合影,站成左端对齐的k排,每排有 \(N-1,N_2,…N_k\)个人,第一排在最后面。学生的身高互不相同,分别为\(1-N\),并且合影时要求每一排从左往右身高递减,每一列从后往前身高递减,问有多少种安排合影的方案 。\(N <=30, k <=5\) //此题默认 —— N1 >= N2 >= N3 >= ... >= Nk #inc...

橘嘉禾 85

Cisco Packet Tracer 7.3免登录技巧:3种方法快速跳过注册界面(附详细截图)

本文针对Cisco Packet Tracer 7.3启动时遇到的登录界面问题,提供了三种合法高效的解决方案。详细介绍了如何利用官方访客模式快速启动、注册思科账号实现一劳永逸登录,以及通过调整本地安装配置优化启动流程,帮助网络学习者与备考者绕过繁琐步骤,快速进入实验环境。

weixin_29305337的博客 741

POJ2279 五维线性dp

POJ2279 五维线性dp(动态规划入门) 题面 POJ2279题面 思路 从头开始系统的学dp,做题目一定要理清dp的五大因素 状态表示 用dp[a1,a2,a3,a4,a5a_1,a_2,a_3,a_4,a_5a1​,a2​,a3​,a4​,a5​]表示第i行上已经插入了aia_iai​个人的排队方法数 阶段划分 已经在各排分配了制定人数的方法数(对应一个五元组) 转移方...

Time Limit Exceeded on test 99 555

U盘 未知USB设备 设定地址失败 由于该设备有问题Windows 已将其停止(代码 43) 终极解决方案(做过系统装机盘而无法解决的必看)

U盘由于该设备有问题Windows 已将其停止(代码 43) 终极解决方案 我们在使用U盘的时候偶尔会碰到下列情况 一般是因为传输数据的过程中,死机或未响应直接断点或拔掉设备导致的,U盘再次插上之后出现设定地址失败。无法再次读取设备的数据。 解决方案: 首先请确认出现该情况不是因为你摔了U盘或接口处产生断裂这种物理损伤导致的!!! 首先请确认出现该情况不是因为你摔了U盘或接口处产生断裂这种物理损...

qq_39123987的博客 13万+

Unity之OpenXR+XR Interaction Toolkit实现 Gaze眼部追踪

在虚拟现实(VR)和增强现实(AR)应用中,眼动追踪是一项强大而受欢迎的技术。它可以让开发者更好地理解用户的注意力和行为,并创造出更加沉浸和智能的体验。在本文中,我们将探讨如何使用 Unity OpenXR 实现Gaze眼部追踪功能。

TxNet 1751

POJ 2279【杨氏矩阵+钩长公式】

题目链接:http://poj.org/problem?id=22793 题意:给出n行,每行有人数限制a[i],并且a[i]&gt;=a[i+1],总人数暂且称为tot=∑a[i],把 1~tot 这些数字填入矩阵,使得矩阵满足每行单调递增,每列单调递增,求满足要求的矩阵数目。 杨氏矩阵又叫杨氏图表,它是这样一个矩阵,满足条件: (1)如果格子(i,j)没有元素,则它右边和上边的相邻格子也...

小康的博客 971

qt项目中添加 jsoncpp 库

qt使用jsoncpp库

deroy 1351

POJ2279 线性dp

http://poj.org/problem?id=2279 学习思路,直接开空间会爆内存,开个动态的可还行。可是怎么开动态多维数组需要学习 #include<cstdio> #include<iostream> #include<cstring> using namespace std; long long f[31][31][31][31][31]; in...

Vicente的博客 256

python点云可视化

Python三种点云可视化方案:mayavi、matplotlib、CloudCompare。

叶子的博客 1万+

PreScan快速入门到精通第二十一讲驾驶员模型之驾驶员在环

请注意,操纵杆的输出角度是以度为单位的,而方向盘执行器希望其输入是以弧度为单位的。当选择一个支持的方向盘时,PreScan会自动将按钮映射到正确的功能上(如换挡),并设置轴的正确范围(如转向角度)。该系统中的所有其他组件都是为了提供正确的按钮映射,并为所选的方向盘设置正确的范围。对于每一个额外连接的控制器,它们的ID会增加一个,例如第二个控制器的设备ID为1,第三个控制器的设备ID为2,等等。由于所有的方向盘最初放在编译表上的设备ID都是0,所以用户应该先进行正确的调整,将每个控制器设置为正确的设备ID。.

小明师兄的博客 1424

poj 2279 Mr. Young's Picture Permutations(线性DP)

传送门 #include<iostream> using namespace std; typedef long long ll; ll k; //k row ll n[10]; // number of each row ll dp[31][31][31][31][31]; int main(){ ios::sync_with_stdio(0); cin.tie(...

qq_42944230的博客 217

华为OD面试八股文嵌入式C语言基础问题及答案(一)

本文总结了C语言编程中的10个关键知识点:1.宏定义MIN的实现方法;2.嵌入式无限循环的两种写法;3.变量a的8种不同定义方式;4.static关键字的三种作用;5.const关键字的含义和使用场景;6.volatile关键字的含义及三个应用实例;7.变量存储位置(栈区、静态区、堆区);8.32位系统指针位数;9.局部与全局变量重名规则;10.引用与指针的三点区别。这些内容涵盖了宏定义、变量声明、存储类别、指针等C语言核心概念,对嵌入式开发和系统编程具有重要参考价值。

m0_50382756的博客 160

poj2279 Mr. Young's Picture Permutations[勾长公式 or 线性DP]

若干人左对齐站成最多5行,给定每行站多少个,列数从第一排开始往后递减。要求身高从每排从左到右递增(我将题意篡改了便于理解233),每列从前向后递增。每个人身高为1...n(n<=30)中的一个数(互不不同)。求可行方案数。(地址点我qwq); 做了lyd书dp这一章的第一题,就不会qwq。。果然菜的人还是永远菜啊,注定翻不了身。 lyd的书上讲到了dp的方法,不是很理解。后...

dianer2977的博客 174

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

POJ2279-Mr. Young's Picture Permutations【线性dp】

正题 题目链接:http://poj.org/problem?id=2279 题目大意 有k列,每列人数不同,要求从左到右和从前到后身高都单调递减,学生高度是1∼N1∼N1\sim N(人数总和) 解题思路 我们开一个五维数组,然后每次在人少那列填充,按照这总方法,我们进行dp(公式较长,暂不解释)。 code #include&lt;cstdio&gt; #incl...

QuantAsk 910

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

POJ - 2279 Mr. Young's Picture Permutations 线性DP + 5维DP

问题描述 有 N 个学生合影,站成左端对齐的 k 排,每排分别有 N1,N2,…,Nk 个人。 (N1≥N2≥…≥Nk) 第1排站在最后边,第 k 排站在最前边。 学生的身高互不相同,把他们从高到底依次标记为 1,2,…,N。 在合影时要求每一排从左到右身高递减,每一列从后到前身高也递减。 问一共有多少种安排合影位置的方案? 下面的一排三角矩阵给出了当 N=6,k=3,N1=3,N2=2,N3=1...

正月看雪花的博客 662

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

poj2279 Mr. Young's Picture Permutations(线性DP)

题目 一个k行,每行n[i]个数字的容器。给出Σn[i]个数字,填入该容器,使得每一行递减,每一列递减。求方案数。(k&lt;=5,Σn[i]&lt;=30) 思考 一般人会去思考,给第(i,j)填x的方案数。这样问题就很复杂了,因为当填(i,j)时,要考虑(i-1,j)和(i,j-1)两个格子的数字,而DP又不便记录。 我们换一种想法,先说说一种朴素做法。记目前每行已填了(a[1],a[2...

A_Bright_CH的博客 422

杨氏矩阵 线性DP? POJ2279 Mr.Young's Picture Permutations

Mr. Young's Picture Permutations Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 1128 Accepted: 562 Description Mr. Young wishes to take a picture of his cla...

weixin_30436891的博客 125

POJ 2279 Mr. Young‘s Picture Permutations【线性DP】

题目链接 题目描述 标号为 1 ~ N 的同学站成 k 行,每行人数为 aia_iai​,规则入下图所示,同一行标号从左向右递增,同一列标号从后向前递减,前面的列数不长于后面的列数,问方案有多少种。 题解: 满足两个方向的递增:因为在合法的方案中,每行每列都是递增的,所以我们可以考虑从标号 1 到 N 开始放,对于同一行的递增,后放的一定大,满足了从左到右递增;对于同一列的递增,后放的也一定大(要满足这一列的行是最后一行或者要放的这一行同一列后面的行已经放了数),这满足了从后向前递增。 满足前面行数不大

weixin_44258590的博客 250

POJ2279 Mr. Young‘s Picture Permutations(线性dp)

Description Mr. Young wishes to take a picture of his class. The students will stand in rows with each row no longer than the row behind it and the left ends of the rows aligned. For instance, 12 students could be arranged in rows (from back to front) of 5

m0_51864047的博客 260

POJ - 2279 Mr. Young‘s Picture Permutations(线性DP)

POJ - 2279 Mr. Young’s Picture Permutations #include<iostream> #include<cstring> using namespace std; typedef long long LL; int s[6]; int n; int main() { while(cin>>n&&n) { memset(s,0,sizeof s); for(int i=0;i<n;i++) c

00后的博客 270

2279 -- Mr. Young‘s Picture Permutations (poj.org) (线性DP)

2279 – Mr. Young’s Picture Permutations (poj.org) 分析: 从左到右,从上到下都是递减 考虑将 1 n1~n1 n 去填这个阶梯状矩阵,动态规划算法如下: 因为 k<=5k<=5k<=5 且 Ni<=30N_i<=30Ni​<=30 ,设 fi,j,k,q,rf_{i,j,k,q,r}fi,j,k,q,r​ (i>=j>=k>=q>=r)(i>=j>=k&g

yezzz的博客 155

POJ - 2279:Mr. Young‘s Picture Permutations(线性dp)

Mr. Young wishes to take a picture of his class. The students will stand in rows with each row no longer than the row behind it and the left ends of the rows aligned. For instance, 12 students could b...

_Griefs 211

1014 - 结论题&dp? - Mr. Young's Picture Permutations(POJ 2279)

传送门   题意 给出n行,每行有人数限制num[i],并且num[i]&gt;=num[i+1],总人数暂且称为tot=∑num[i],把1~tot这些数字填入矩阵,使得矩阵满足每行单调递增,每列单调递增,求满足要求的矩阵数目   分析 一开始是打着做dp的名号,发现了这道题 在《算法竞赛》这本书上,是这样讲的 线性dp 但实际上,由于这道题空间限制比较严,我们dp的话会爆...

Faithfully-xly的博客 182

poj2279——Mr. Young's Picture Permutations

Description Mr. Young wishes to take a picture of his class. The students will stand in rows with each row no longer than the row behind it and the left ends of the rows aligned. For instance, 12 stu...

weixin_30426065的博客 230
上一篇: codeforce617 E. XOR and Favorite Number 异或 莫队
下一篇: codeforce1064 D. Labyrinth 双端队列 决策优化
qianyri
博客等级 码龄9年 7粉丝 99原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值