UVA 10564 十 Paths through the Hourglass
Time Limit:3000MS Memory Limit:0KB 64bit IO Format:%lld & %llu
#include <stdio.h>
#include <string.h> int n,s;
long long dp[][][];
int a[][]; int d(int x,int y,int m)
{
if(x>=*n-)
return ;
int v=a[x][y];
if(dp[x+][y][m-v]>)
{
printf("L");
d(x+,y,m-v);
}
else
{
printf("R");
d(x+,y+,m-v);
}
return ;
} int main()
{
int i,j,k;
while(scanf("%d %d",&n,&s)!=EOF)
{
if(n== && s==)
break;
memset(dp,,sizeof(dp));
for(i=;i<=n;i++)
{
for(j=i;j<=n;j++)
{
scanf("%d",&a[i][j]);
}
}
for(i=n+;i<=*n-;i++)
{
for(j=n;j<=i;j++)
{
scanf("%d",&a[i][j]);
}
} for(i=n;i<=*n-;i++)
{
int v=a[*n-][i];
dp[*n-][i][v]=;
}
for(i=n*-;i>n;i--)
{
for(j=n;j<=i;j++)
{
int v=a[i][j];
for(k=v;k<=s;k++)
{
dp[i][j][k]=dp[i+][j][k-v]+dp[i+][j+][k-v];
}
}
}
for(i=n;i>=;i--)
{
for(j=i;j<=n;j++)
{
int v=a[i][j];
for(k=v;k<=s;k++)
{
dp[i][j][k]=dp[i+][j][k-v]+dp[i+][j+][k-v];
}
}
} long long cnt=;
for(i=;i<=n;i++)
{
cnt=cnt+dp[][i][s];
}
printf("%lld\n",cnt);
for(i=;i<=n;i++)
{
if(dp[][i][s]>)
{
printf("%d ",i-);
d(,i,s);
break;
}
}
printf("\n");
}
return ;
}
UVA 10564 十 Paths through the Hourglass的更多相关文章
- UVa 10564 DP Paths through the Hourglass
从下往上DP,d(i, j, k)表示第(i, j)个格子走到底和为k的路径条数. 至于字典序最小,DP的时候记录一下路径就好. #include <cstdio> #include &l ...
- UVA 10564 Paths through the Hourglass[DP 打印]
UVA - 10564 Paths through the Hourglass 题意: 要求从第一层走到最下面一层,只能往左下或右下走 问有多少条路径之和刚好等于S? 如果有的话,输出字典序最小的路径 ...
- 01背包(类) UVA 10564 Paths through the Hourglass
题目传送门 /* 01背包(类):dp[i][j][k] 表示从(i, j)出发的和为k的方案数,那么cnt = sum (dp[1][i][s]) 状态转移方程:dp[i][j][k] = dp[i ...
- uva 10564
Problem FPaths through the HourglassInput: Standard Input Output: Standard Output Time Limit: 2 Seco ...
- UVA 10564 - Paths through the Hourglass (dp)
本文出自 http://blog.csdn.net/shuangde800 题目传送门 题意: 给一个相上面的图.要求从第一层走到最下面一层,只能往左下或右下走,经过的数字之和为sum. 问有多少 ...
- UVA 10564 Paths through the Hourglass(背包)
为了方便打印路径,考虑从下往上转移.dp[i][j][S]表示在i行j列总和为S的方案, dp[i][j][S] = dp[i+1][left][S-x]+dp[i+1][right][S-x] 方案 ...
- UVA - 10564 Paths through the Hourglass
传送门:https://vjudge.net/problem/UVA-10564 题目大意:给你一张形如沙漏一般的图,每一个格子有一个权值,问你有多少种方案可以从第一行走到最后一行,并且输出起点最靠前 ...
- UVA 10564_ Paths through the Hourglass
题意: 由0-9的数字组成一个形如沙漏的图形,要求从第一行开始沿左下或者右下到达最后一行,问有多少种不同的路径,使最后路径上的整数之和为给定的某个数. 分析: 简单计数dp,从最后一行开始,设dp[i ...
- UVA 10163 十六 Storage Keepers
十六 Storage Keepers Time Limit:3000MS Memory Limit:0KB 64bit IO Format:%lld & %llu Submit ...
随机推荐
- 4. 星际争霸之php设计模式--工厂方法模式
题记==============================================================================本php设计模式专辑来源于博客(jymo ...
- MyEclipse启动失败
日志的一部分: !SESSION 2014-09-24 11:47:03.156 -----------------------------------------------eclipse.buil ...
- 【bs4】安装beautifulsoup
Debian/Ubuntu,install $ apt-get install python-bs4 easy_install/pip $ easy_install beautifulsoup4 $ ...
- StringTokenizer类
StringTokenizer是一个用来分隔String字符串的应用类. 1.构造函数 public StringTokenizer(String str) //构造一个用来解析str的String ...
- 图解IoC 依赖注入
- php ssh2 scp问题解决
<?php$connection = ssh2_connect('192.168.1.XX', 22);$res=ssh2_auth_password($connection, 'root', ...
- https笔记
TCP提供了可靠的,面向连接的字节流服务. 1)应用数据分割成TCP认为适合发送的数据块,通过MSS(最大数据包长度)来控制. 2)重传机制 3)对首部和数据进行校验 4)TCP对收到的数据进行排序, ...
- ASP开发入门+实战电子书共50本 —下载目录
小弟为大家整理50个ASP电子书籍,有入门,也有实战电子书,做成了一个下载目录,欢迎大家下载. 资源名称 资源地址 ASP.NET开发实战1200例_第I卷 http://down.51cto.com ...
- grep DEMO
测试数据: [xiluhua@vm-xiluhua][~]$ cat msn.txt aaa bbb bbb ccc ccc ddd bbb eee aaa ccc bbb sss [xiluhua@ ...
- Oracle将表keep到内存
一.引言: 有时候一些基础表需要非常的频繁访问,尤其是在一些循环中,对该表中的访问速度将变的非常重要.为了提高系统的处理性能,可以考虑将一些表及索引读取并保存到内存中. 二.关于keep内存的几个参数 ...