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 ...
随机推荐
- 夺命雷公狗ThinkPHP项目之----企业网站22之网站前台中间层(解决代码冗余)
我们如果这样写代码虽然可以实现头部二级分类的显示,但是如果再别的控制器下那么会出现显示不了.. 如果再加多一段一样的代码也可以实现出一样的效果: 但是这样会导致代码冗余现象,所以我们为了解决这个问题, ...
- 【crunch bang】字体美化
中文字体美化是个很讨厌的事情,无数初学者在这里面浪费了无数时间,做了无数没有意义的事情.但这也是不得不做的,我把 Debian/Ubuntu 所需要的中文字体美化操作步骤详细记录在这里,希望能节约大家 ...
- Report launcher to run SSRS report subscriptions on demand
http://www.mssqltips.com/sqlservertip/3078/report-launcher-to-run-ssrs-report-subscriptions-on-deman ...
- oracle的面试问题
1. Oracle跟SQL Server 2005的区别? 宏观上: 1). 最大的区别在于平台,oracle可以运行在不同的平台上,sql server只能运行在windows平台上,由于windo ...
- 创建与删除SQL约束或字段约束
1)禁止所有表约束的SQLselect 'alter table '+name+' nocheck constraint all' from sysobjects where type='U'2)删除 ...
- 作为一个web开发人员,哪些技术细节是在发布站点前你需要考虑到的
前日在cnblogs上看到一遍文章<每个程序员都必读的12篇文章>,其中大多数是E文的. 先译其中一篇web相关的”每个程序员必知之WEB开发”. 原文: http://programme ...
- XAMPP和Bugfree详细教程
一.XAMPP安装配置 xampp是一款跨平台的集成 apache + mysql + php环境,是的配置AMP服务器变得简单轻松,支持windows,solaris, 下载地址:http://so ...
- 爱普生 RS330 打印机墨水连供装置墨盒吸墨复位方法
芯片复位方法: 先按充墨键(墨水灯按键),一下一下按,把墨车按停到右侧换墨盒的位置为止(就是右侧框框正中位置), 全程带电操作,停到换墨盒的位置后再按住芯片复位键(墨盒芯片上面白色的小按键)5秒以上再 ...
- Atom Remote-FTP connecting FTP with SSL/TLS
{ "protocol": "ftp", "host": "xxx.xxx.xxx.xxx", "port&q ...
- MyEclipse下搭建maven项目
由于maven在构建项目方面确实比较出色,现今绝大多数人构建项目都采用maven,而且绝大多数人都采用eclipse作为开发环境,今天我用myeclipse搭建了一个demo,虽然基本上不会采用mye ...