木瓜地

背景 Background
USACO OCT09 4TH
 
描述 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

数据范围和注释 Hint
Bessie按照下图数字旁边的字母的顺序吃掉木瓜。

     (1,1) ---> (1,C)
(1,1) 3a  3   4g  5h  (1,C)
  |   4b  5c  3f  2i    |
(R,1) 1   7d  4e  2j  (R,C)
     (R,1) ---> (R,C)

她吃了39个木瓜,剩下4个没有吃(也就是说除了2个格幸免於难,剩下的格子都被Bessie扫
荡过了)。

 
题解:
#include <stdbool.h>
#include <stdio.h>
int main(void)
{
int i,j,r,c,a[][],xi=,yi=,maxx=,maxy=,max;
bool b[][]={false};
long sum=;
scanf("%d%d\n",&r,&c);
for (i=;i<=r;i++)
{
for (j=;j<=c;j++)
{
scanf("%d",&a[i][j]);
b[i][j]=true;
}
} sum=sum+a[][];
b[][]=false;
while (true)
{ max=-;
if ((b[xi][yi+]==true)&&(a[xi][yi+]>max))
{
maxx=xi;maxy=yi+;
max=a[xi][yi+];
}
if ((b[xi][yi-]==true)&&(a[xi][yi-]>max))
{
maxx=xi;maxy=yi-;
max=a[xi][yi-];
}
if ((b[xi+][yi]==true)&&(a[xi+][yi]>max))
{
maxx=xi+;maxy=yi;
max=a[xi+][yi];
}
if ((b[xi-][yi]==true)&&(a[xi-][yi]>max))
{
maxx=xi-;maxy=yi;
max=a[xi-][yi];
}
b[maxx][maxy]=false;
sum=sum+a[maxx][maxy];
xi=maxx;yi=maxy;
if ((maxx==r)&&(maxy==c)) break; } printf("%d\n",sum);
return ; }

[TYVJ] P1027 木瓜地的更多相关文章

  1. tyvj 1027 木瓜地 简单模拟

    P1027 木瓜地 时间: 1000ms / 空间: 131072KiB / Java类名: Main 背景 USACO OCT09 4TH 描述 Bessie不小心游荡出Farmer John的田地 ...

  2. P1027 木瓜地

    /*=========================================================== 描述 Description Bessie不小心游荡出Farmer John ...

  3. [BZOJ3223]Tyvj 1729 文艺平衡树

    [BZOJ3223]Tyvj 1729 文艺平衡树 试题描述 您需要写一种数据结构(可参考题目标题),来维护一个有序数列,其中需要提供以下操作:翻转一个区间,例如原有序序列是5 4 3 2 1,翻转区 ...

  4. [BZOJ3224]Tyvj 1728 普通平衡树

    [BZOJ3224]Tyvj 1728 普通平衡树 试题描述 您需要写一种数据结构(可参考题目标题),来维护一些数,其中需要提供以下操作:1. 插入x数2. 删除x数(若有多个相同的数,因只删除一个) ...

  5. BZOJ3223: Tyvj 1729 文艺平衡树 [splay]

    3223: Tyvj 1729 文艺平衡树 Time Limit: 10 Sec  Memory Limit: 128 MBSubmit: 3595  Solved: 2029[Submit][Sta ...

  6. BZOJ 3224: Tyvj 1728 普通平衡树

    3224: Tyvj 1728 普通平衡树 Time Limit: 10 Sec  Memory Limit: 128 MBSubmit: 9629  Solved: 4091[Submit][Sta ...

  7. BZOJ 3223: Tyvj 1729 文艺平衡树

    3223: Tyvj 1729 文艺平衡树 Time Limit: 10 Sec  Memory Limit: 128 MBSubmit: 3628  Solved: 2052[Submit][Sta ...

  8. TYVJ P1080 N皇后

    描述 检查一个如下的6 x 6的跳棋棋盘,有六个棋子被放置在棋盘上,使得每行.每列只有一个,每条对角线(包括两条主对角线的所有平行线)上至多有一个棋子. 列号  1  2  3  4  5  6 -- ...

  9. TYVJ博弈论

    一些比较水的博弈论...(为什么都没有用到那什么SG呢....) TYVJ 1140  飘飘乎居士拯救MM 题解: 歌德巴赫猜想 #include <cmath> #include < ...

随机推荐

  1. Netbeans 注释模板配置

    工具->模板->展开Java 选中Java类->在编辑器中打开 修改如下: <#if package?? && package != ""& ...

  2. Delphi - GetUserNameEx(学一下导出Windows API,以及Array Char充当缓冲区的用法,下标必须从零开始)

    (* * Author : http://www.michael-puff.de * Date : 2006-03-29 * License : PUBLIC DOMAIN *) function G ...

  3. js深入研究之神奇的匿名函数类生成方式

    <script type="text/javascript"> var Book = (function() { // 私有静态属性 ; // 私有静态方法 funct ...

  4. JVM基础和调优(四)

    垃圾回收算法中的一些问题 再上一遍中,说道JVM并不是采用一种垃圾回收的方法,因为不同的内存块采取的方法是不样的,那么:为什么要分块?为什么不采用同一种方法回收垃圾,这样不是更加的统一吗? 分块的垃圾 ...

  5. Enum Types

    参考Java的官方tutorial和Doc整理如下. What is Enum An enum type is a special data type. It enables for a variab ...

  6. Qt Mac 下软件Release 公布dmg

    1.首先当然是用Qt Creator.编译一个Release版本号的软件 注意到编译出来的大小非常小,才420KB,由于一些类库还没包括进去的原因.如今还仅仅能在你本地执行,复制到其它Mac电脑就不能 ...

  7. LoadRunner录制回放脚本RecContentType=application/json报错

    今天做一个新项目,项目系统的框架是用SSH,特意查看了一下项目源码,用的ajax提交比较多,主要的问题是该系统对IE(8~10)浏览器都不兼容,无法进行录制. 是问题,总有解决的办法! 我本机为Loa ...

  8. CentOS6.6修改主机名和网络信息

    1.修改主机名称 [root@centos ~]# vim /etc/sysconfig/network #打开文件,修改以下内容并保存 NETWORKING=yes #使用网络HOSTNAME=ce ...

  9. ASP.NET网页抓取数据

    我的数据通过一个TextBox输入,这些代码是写在一个button的点击事件里的. 网页数据抓取大概分为两步,第一步是获取网页源代码: 具体注释如下: var currentUrl = TextBox ...

  10. Code First 数据注释--InverseProperty 和 ForeignKey

    ForeignKey 按照约定在Post类中看到BlogId属性,会认为是Blog类的外键,但是在Blog类中并没有BlogId属性,解决方法是,在 Post 中创建一个导航属性,并使用 Foreig ...