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其中一 ...
随机推荐
- mysql三
修改字段名 mysql> alter table users change id user_id INT UNSIGNED AUTO_INCREMENT; 修改字段类型 mysql> al ...
- Linux Shell编程(4): 逻辑运算符、逻辑表达式详解
shell的逻辑运算符 涉及有以下几种类型,因此只要适当选择,可以解决我们很多复杂的判断,达到事半功倍效果. 一.逻辑运算符 逻辑卷标 表示意思 1. 关于档案与目录的侦测逻辑卷标! -f 常用!侦测 ...
- 【英语】Bingo口语笔记(54) - how to date a foreigner
- 【转】关于Python脚本开头两行的:#!/usr/bin/python和# -*- coding: utf-8 -*-的作用 – 指定文件编码类型
原文网址:http://www.crifan.com/python_head_meaning_for_usr_bin_python_coding_utf-8/ #!/usr/bin/python 是用 ...
- 基于CentOS与VmwareStation10搭建Oracle11G RAC 64集群环境:2.搭建环境-2.1创建虚拟机
2.1.创建虚拟机 2.1.1. 创建虚拟机节点1 2.1.2. 创建虚拟机节点2 操作如节点1. 基于CentOS与VmwareStation10搭建Oracle11G RAC 64集群环境所有链 ...
- jQuery 实现Bootstrap Chart 图表
很多时候我们制作报表的时候需要图表,如果你使用bootstrap开发你的网站,如果你需要使用图表,那么最简单的方法就是就是使用bootstrap 的chart.js来实现图表,下面介绍方法 1.引入c ...
- 【leetcode】Find Minimum in Rotated Sorted Array II JAVA实现
一.题目描述 Follow up for "Find Minimum in Rotated Sorted Array":What if duplicates are allowed ...
- 将a、b的值进行交换,并且不使用任何中间变量
方法1:用异或语句 a = a^b; b = a^b; a = a^b; 注:按位异或运算符^是双目运算符,其功能是参与运算的两数各对应的二进制位相异或,当对应的二进制相异时,结果为1.参与运算数仍以 ...
- Oracle数据泵
要使用数据泵必须先创建数据库目录 数据库目录只允许sys创建 普通用户使用 必须授权 假设scott 用户是导出导入用户 SQL> ! mkdir dp_dir SQ ...
- Linux环境Weblogic10g服务部署
1.先安装XManager: 2.进入XShell,远程连接Linux主机后,按如下操作即可打开XManager配置WebLogic部署服务: [root@server36 bin]# cd /[ro ...