hdoj 5402 Travelling Salesman Problem
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5402
类似于黑白棋盘,有的格子是可以不走的,有的格子是不能不走的,对于m或n中有一个奇数的情况,
所有的数都可以走到,当m和n都是偶数的时候,则需要分情况讨论,两行缩成一行走,
从而走遍可以走的数。m=1且n=1的时候需要特判
#include<stdio.h>
#include<cstring>
;
int main(){
int n, m;
int sum;
int maze[MAXN][MAXN];
// freopen("e.txt","r",stdin);
while(~scanf("%d%d",&n,&m)){
sum = ;
memset(maze,,sizeof(maze));
; i < n; ++i){
; j < m; ++j){
scanf("%d",&maze[i][j]);
sum += maze[i][j];
}
}
&& m == ){
printf("%d\n",sum);
printf("R\n");
continue;
}
== ){
printf("%d\n",sum);
; i < n; ++i){
; j < m; ++j){
){
printf("D");
continue;
}
== )
printf("R");
else
printf("L");
}
)
printf("D");
}
printf("\n");
continue;
}
== ){
printf("%d\n",sum);
; i < m; ++i){
; j < n; ++j){
== )
printf("D");
else
printf("U");
}
)
printf("R");
}
printf("\n");
continue;
}
else{
;
int pi, pj;
; i < n; ++i){
; j < m; ++j){
== && (maze[i][j] < _min)){
_min = maze[i][j];
pi = i;
pj = j;
}
}
}
// 找到最小值
printf("%d\n",sum-_min);
== ){
; i < pi-; ++i ){
; j < m-; ++j){
== )
printf("R");
else
printf("L");
}
)
printf("D");
}
}
// 如果是奇数行出现,前pi-2行按规律走
else{
; i < pi; ++i ){
; j < m-; ++j){
== )
printf("R");
else
printf("L");
}
)
printf("D");
}
}
// 如果是偶数行出现,前pi-1行按规律走
; i < pj; ++i){
== )
printf("D");
else
printf("U");
printf("R");
}
)
printf("R");
; i < m; ++i){
== )
printf("D");
else
printf("U");
)
printf("R");
}
== && pi + == n) && !( pi % == && pi + == n ))
printf("D");
// 两行变一行
== ){
; i < n; ++i ){
; j < m-; ++j){
== )
printf("R");
else
printf("L");
}
)
printf("D");
}
}
else{
; i < n; ++i ){
; j < m; ++j){
== )
printf("R");
else
printf("L");
}
)
printf("D");
}
}
}
printf("\n");
}
}
hdoj 5402 Travelling Salesman Problem的更多相关文章
- HDOJ 5402 Travelling Salesman Problem 模拟
行数或列数为奇数就能够所有走完. 行数和列数都是偶数,能够选择空出一个(x+y)为奇数的点. 假设要空出一个(x+y)为偶数的点,则必须空出其它(x+y)为奇数的点 Travelling Salesm ...
- 构造 - HDU 5402 Travelling Salesman Problem
Travelling Salesman Problem Problem's Link: http://acm.hdu.edu.cn/showproblem.php?pid=5402 Mean: 现有一 ...
- HDU 5402 Travelling Salesman Problem (构造)(好题)
大致题意:n*m的非负数矩阵,从(1,1) 仅仅能向四面走,一直走到(n,m)为终点.路径的权就是数的和.输出一条权值最大的路径方案 思路:因为这是非负数,要是有负数就是神题了,要是n,m中有一个是奇 ...
- HDU 5402 Travelling Salesman Problem (模拟 有规律)(左上角到右下角路径权值最大,输出路径)
Travelling Salesman Problem Time Limit: 3000/1500 MS (Java/Others) Memory Limit: 65536/65536 K (J ...
- HDU 5402 Travelling Salesman Problem(棋盘染色 构造 多校啊)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5402 Problem Description Teacher Mai is in a maze wit ...
- hdu 5402 Travelling Salesman Problem(大模拟)
Problem Description Teacher Mai ,) to the bottom right corner (n,m). He can choose one direction and ...
- HDU 5402 Travelling Salesman Problem(多校9 模拟)
题目链接:pid=5402">http://acm.hdu.edu.cn/showproblem.php?pid=5402 题意:给出一个n×m的矩阵,位置(i.j)有一个非负权值. ...
- HDU 5402 : Travelling Salesman Problem
题目大意:n*m的格子,从左上角走到右下角,每个格子只能走一遍,每个格子上有一个非负数,要让途径的数字和最大,最后要输出路径 思路:显然茹果n,m有一个是奇数的话所有格子的数字都能被我吃到,如果都是偶 ...
- hdu 5402 Travelling Salesman Problem (技巧,未写完)
题意:给一个n*m的矩阵,每个格子中有一个数字,每个格子仅可以走一次,问从(1,1)走到(n,m) 的路径点权之和. 思路: 想了挺久,就是有个问题不能短时间证明,所以不敢下手. 显然只要n和m其中一 ...
随机推荐
- codevs 4927 线段树练习5
赶在期末考试之前把这道傻逼题调了出来. #include<iostream> #include<cstdio> #include<cstring> #include ...
- HDU 5371 Hotaru's problem (Manacher,回文串)
题意:给一个序列,找出1个连续子序列,将其平分成前,中,后等长的3段子序列,要求[前]和[中]是回文,[中]和[后]是回文.求3段最长为多少?由于平分的关系,所以答案应该是3的倍数. 思路:先Mana ...
- 嵌入式 VFS: Cannot open root device "mtdblock2" or unknown-block(2,0)
系统启动后,虽然nand驱动表现正常,但是最后挂载rootfs时候出错: Kernel command line: root=/dev/mtdblock2 rw init=/linuxrc conso ...
- hibernate的组成部分
持久化类 实现对应的序列化接口 必须有默认的构造函数 持久化类的属性不能使用关键字 标示符 映射文件 类型 java类型和hibernate类型 主键的产生器 increment identity a ...
- Selenium启动本地firefox的profile
ProfilesIni pi = new ProfilesIni();FirefoxProfile profile = pi.getProfile("default");WebDr ...
- 基于OSGI.Net的图形界面系统
在2013年的十月份有幸接触了osgi.net和iopenworks的创始人,了解和学习的插件式开发,开始了后台数据的处理生涯. 第一个有图形界面的系统——智能农业的环境监测系统,其实在这个系统中所有 ...
- webstorm启动bug
场景描述: win10系统下,webstorm(32位)经常遇到无法启动的情况. 解决方案: 重启电脑. 1.win10系统需要更新时,webstorm无法启动,此为win10 bug,重启时,系统自 ...
- MarkdownPad 破解学习
最近学习 Markdown,从网上下载了 Windows 下的编辑器:MarkdownPad.这款软件分为免费版和专业版(收费), 对于普通用户来说免费版已经足够,专业版比免费版多了如下几个功能: 一 ...
- Java Core 学习笔记——3.char/Unicode/代码点/代码单元
通用字符集(UCS) UCS是由ISO制定的ISO 10646(或称ISO/IEC 10646)标准所制定的标准字符集. UCS包括了其他所有的字符集(包含了已知语言的所以字符). ISO/IEC 1 ...
- 写好Hive 程序的五个提示
转自http://www.alidata.org/archives/622 使用Hive可以高效而又快速地编写复杂的MapReduce查询逻辑.但是某些情况下,因为不熟悉数据特性,或没有遵循Hive的 ...