poj2056
寻找向左凸的地方,每个左凸能让S数量-2。上边或下边如果是半个左凸的话则各对应-1
#include <cstdio>
#include <cstring>
#include <cstdlib>
using namespace std; #define MAX_ROW 205
#define MAX_COLUMN MAX_ROW int row, column;
char grid[MAX_ROW][MAX_COLUMN]; void input()
{
memset(grid, , sizeof(grid));
for (int i = ; i < row; i++)
scanf("%s", grid[i]);
} void work()
{
int direction = -; //1 is right, 0 is left
int s_cnt = ;
int x = ;
int y = ;
while (grid[x][y] != 'S')
y++;
s_cnt++;
while (x < row)
{
if (y != && grid[x][y - ] == 'S')
{
direction = ;
while (y > && grid[x][y - ] == 'S')
y--, s_cnt++;
x++, s_cnt++;
continue;
}
if (y + < column && grid[x][y + ] == 'S')
{
if (direction == -)
s_cnt--;
if (direction == )
s_cnt -= ;
direction = ;
while (y + < column && grid[x][y + ] == 'S')
y++, s_cnt++;
x++, s_cnt++;
continue;
}
x++, s_cnt++;
}
if (direction == )
s_cnt--;
printf("%d\n", s_cnt - );
} int main()
{
while (scanf("%d%d", &row, &column), row | column)
{
input();
work();
}
return ;
}
poj2056的更多相关文章
随机推荐
- springboot项目的创建
创建springboot项目 包名和项目名 选择需要使用的框架,web 然后再点击下一步,完成即可创建springboot项目
- 一日游 + 进度psp
假设我们全班同学及教师去吉林省吉林市1日游,请为这次活动给出规格说明书. 目录 1 引言 1.1 编写目的 1.2 项目背景 1.3 参考资料 2 需求分析 2.1 交通方式 ...
- 使用jmeter 上传文件
1.上传图片至阿里云时参数使用的parameters ,所以http的消息头中并没有添加content-type ,如果消息头中添加了Content-Type: multipart/form-data ...
- android 命令行安装apk
有两种方式可以在android模拟器或真机上使用命令行安装apk 一种是使用adb install命令,网上通常是这种方式 另一种是通过android提供的命令,pm install. 需要先进入an ...
- PHP仿LED点阵,读取字库文字,并转化为二进制输出
<?php $xml=simplexml_load_file("zimu.xml");//导入XML文件,从XML文件里知道需要提取的字体的信息 $font_height=$ ...
- Java之资源文件读取
ClassLoaderWrapper.java package org.utils.resource; import java.io.InputStream; import java.net.URL; ...
- 基于Vue-cli 快速搭建项目
Vue-cli可以快速帮助我们创建一个项目,这是官方给我们提供的脚手架.下面我说一下vue-cli的使用方法. 一.准备工作 在使用vue-cli时,首先需要安装nodejs,npm,其次需全局安装v ...
- c#public、private、protected、internal、protected internal
public 公有访问.不受任何限制.private 私有访问.只限于本类成员访问,子类,实例都不能访问.protected 保护访问.只限于本类和子类访问,实例不能访问.internal 内部访问. ...
- git merge以及比较两个repo
一.需求 1)有两个相关的branch github下载的repo有master和work两个分支,由于远端已经更新,master分支落后于远端分支,work分支又有新的更新内容,需要将远端maste ...
- poj2828 Buy Tickets (线段树 插队问题)
Buy Tickets Time Limit: 4000MS Memory Limit: 65536K Total Submissions: 22097 Accepted: 10834 Des ...