P1027 木瓜地

简介: /*=========================================================== 描述 Description Bessie不小心游荡出Farmer John的田地,而走进了相邻的农民的地。
/*===========================================================
描述 Description
Bessie不小心游荡出Farmer John的田地,而走进了相邻的农民的地。她举起一个木瓜,木
瓜对奶牛来说可是不可多得得美味。这个木瓜林像一般的威斯康星州的田地一样被分割成一个
R行C列的网格(1 <= R <= 40, 1 <= C <= 40)。Bessie可以从一个格沿著一条跟X轴或
Y轴平行的直线走到邻接的令一个格。Bessie发现一开始她自己在木瓜林的(1,1),也就是第
一行第一列慢悠悠地咀嚼著木瓜。

Bessie总是用她最信赖地双筒望远镜去数每一个邻接的格的低掛著的木瓜的数目。然后她就游
荡到那个有最多没有被吃掉的木瓜的邻接的格子(保证这洋的格子只有一个)。

按照这种移动方法,最终Bessie总是会在(R,C)停止然后吃掉那裡的木瓜。

给定这个木瓜林的大小及每个格的木瓜数F_ij(1 <= F_ij <= 100), 要求Bessie一共吃了
多少个木瓜。
输入格式 InputFormat
* 第一行: 两个空格隔开的整数R和C.

* 第2到R+1行: 第i+1行有C个空格隔开的整数,表示第i行的每个格的水果数。也就是F_i1, 
F_i2, ..., F_iC.
输出格式 OutputFormat
* 第一行: 一个单独的整数,表示到Bessie吃完右下角(R,C)的木瓜回到牛棚的时候為止,
一共在木瓜林吃掉了多少个木瓜。
样例输入 SampleInput
3 4
3 3 4 5
4 5 3 2
1 7 4 2
样例输出 SampleOutput
39

这个题既然题目明讲搜索策略就是选最大的而且保证能到达坐标(R,C) ,
所以可以直接简单按题目意思模拟过程即可。 不需要考虑什么贪心等策略,
也不用考虑会进入死胡同的问题。 
=============================================================*/
 1 #include<stdio.h>
 2 int main()
 3 {
 4     int R,C,i,j,x,y,mx,my,m;
 5     int a[41][41];
 6     int sum=0;
 7     scanf("%d%d",&R,&C);
 8     for(i=1;i<=R;i++)
 9     {
10         for(j=1;j<=C;j++)
11         {
12             scanf("%d",&a[i][j]);
13         }
14     }
15     i=1;
16     j=1;
17     sum=a[i][j];
18     a[i][j]=0;
19     while(!(i==R&&j==C))
20     {
21         m=-1;
22         x=i-1;
23         y=j;
24         if(x>0&&x<=40&&y>0&&y<=40)
25         {
26             if(a[x][y]>m)
27             {
28                 m=a[x][y];
29                 mx=x;
30                 my=y;
31             }
32         }
33         x=i+1;
34         y=j;
35         if(x>0&&x<=40&&y>0&&y<=40)
36         {
37             if(a[x][y]>m)
38             {
39                 m=a[x][y];
40                 mx=x;
41                 my=y;
42             }
43         }
44         x=i;
45         y=j-1;
46         if(x>0&&x<=40&&y>0&&y<=40)
47         {
48             if(a[x][y]>m)
49             {
50                 m=a[x][y];
51                 mx=x;
52                 my=y;
53             }
54         }
55         x=i;
56         y=j+1;
57         if(x>0&&x<=40&&y>0&&y<=40)
58         {
59             if(a[x][y]>m)
60             {
61                 m=a[x][y];
62                 mx=x;
63                 my=y;
64             }
65         }
66         i=mx;
67         j=my;
68         sum=sum+m;
69         a[i][j]=0;
70     }
71     printf("%d\n",sum);
72     return 0;
73 }
View Code

 

 

 

 

 

相关文章
|
3月前
|
JavaScript 前端开发 搜索推荐
ECharts词云图(案例一)+配置项详解
ECharts,百度的JavaScript图表库,支持词云图(自5.0版起),借助`echarts-wordcloud`插件。配置词云图涉及`tooltip`(如显示、颜色、边框等)和`series`(类型、形状、大小范围等)。示例代码展示了如何在HTML中引入依赖并配置词云图,包括数据、形状、大小、颜色等。完整代码和依赖可下载。调整这些配置可创建个性化词云图。参阅官方文档获取不同版本详情。
500 4
 ECharts词云图(案例一)+配置项详解
|
3月前
|
机器学习/深度学习 人工智能 供应链
构建未来:AI技术在智能物流中的应用
【5月更文挑战第38天】 随着人工智能技术的飞速发展,其在各行各业的应用已经变得日益广泛。特别是在智能物流领域,AI不仅改变了传统物流的运作模式,还极大提升了效率和准确性。本文将深入探讨AI在智能物流中的具体应用,包括库存管理、运输优化、自动化仓库以及客户服务等方面,并分析其对整个行业的深远影响。通过案例分析和数据支撑,我们展示了AI如何帮助物流公司降低成本、提高客户满意度,并推动整个供应链系统的创新。
|
9月前
|
存储 C语言 容器
unordered_map介绍
unordered_map介绍
|
4月前
|
API 数据安全/隐私保护
SpringSecurity结合JwtToken验证(后端部分)
SpringSecurity结合JwtToken验证(后端部分)
89 0
SpringSecurity结合JwtToken验证(后端部分)
|
4月前
|
网络协议 NoSQL Redis
解决 Error starting userland proxy: listen tcp 0.0.0.0:6379: bind: address already in use
解决 Error starting userland proxy: listen tcp 0.0.0.0:6379: bind: address already in use
278 0
|
9月前
|
缓存 网络协议 算法
计算机网络———数据链路层(上)
计算机网络———数据链路层(上)
|
程序员 API PHP
PHP的扩展是干什么的?底层原理是什么?
PHP的扩展是干什么的?底层原理是什么?
202 0
|
关系型数据库 MySQL 数据库
MySQL解压版安装步骤 - 最全步骤流程
将安装包复制进对应目录,进行解压
365 0
|
运维 Java 开发者
实现 FallbackFactory 容错获取异常|学习笔记
快速学习实现 FallbackFactory 容错获取异常
396 0
实现 FallbackFactory 容错获取异常|学习笔记