Tyvj P1813 [JSOI2008]海战训练
描述
但不幸的是因为种种原因,海军部仅有很少的几位军官能指挥大型海战。因此,他们考虑培养一些新的海军指挥官,为此选择了“海战”这一游戏来帮助训练。
在这个著名的游戏中,一个方形的盘上放置了固定数量和形状的船只,每只船却不能碰到其它的船。在这个题中,我们仅考虑船是方形的,所有的船只都是由图形组成的方形。编写程序求出该棋盘上放置的船只的总数。
输入格式
输出格式
测试样例1
输入
6 8
.....#.#
##.....#
##.....#
.......#
#......#
#..#...#
输出
There are 5 ships.
备注
var
i,j,k,l,m,n,tt:longint;
a,b,dow,up,lef,rig:array[..,..] of longint;
c1:char;
procedure OrzPhile;
begin
writeln('Bad placement.');
halt;
end;
begin
readln(n,m);
for i:= to n do
begin
for j:= to m do
begin
read(c1);
case c1 of
'.':a[i,j]:=;
else a[i,j]:=;
end;
end;
readln;
end;
fillchar(b,sizeof(b),);
fillchar(dow,sizeof(dow),);
fillchar(rig,sizeof(rig),);
fillchar(lef,sizeof(lef),);
for i:= to n do
for j:= to m do
begin
if a[i,j]= then lef[i,j]:=lef[i,j-]+ else lef[i,j]:=;
if a[i,j]= then up[i,j]:=up[i-,j]+ else up[i,j]:=;
end;
for i:=n downto do
for j:=m downto do
begin
if a[i,j]= then rig[i,j]:=rig[i,j+]+ else rig[i,j]:=;
if a[i,j]= then dow[i,j]:=dow[i+,j]+ else dow[i,j]:=;
end;
tt:=;
for i:= to n do
for j:= to m do
if (a[i,j]=) and (a[i-,j]=) and (a[i,j-]=) then
begin
for k:= to dow[i,j] do
begin
if lef[i+k-,j]> then OrzPhile;
if rig[i+k-,j]<>rig[i,j] then OrzPhile;
end;
for k:= to rig[i,j] do
begin
if up[i,j+k-]> then OrzPhile;
if dow[i,j+k-]<>dow[i,j] then OrzPhile;
end;
inc(tt);
end;
writeln('There are ',tt,' ships.');
end.
Tyvj P1813 [JSOI2008]海战训练的更多相关文章
- JSOI2008 火星人prefix
1014: [JSOI2008]火星人prefix Time Limit: 10 Sec Memory Limit: 162 MBSubmit: 2918 Solved: 866[Submit][ ...
- BZOJ1012: [JSOI2008]最大数maxnumber [线段树 | 单调栈+二分]
1012: [JSOI2008]最大数maxnumber Time Limit: 3 Sec Memory Limit: 162 MBSubmit: 8748 Solved: 3835[Submi ...
- SSD框架训练自己的数据集
SSD demo中详细介绍了如何在VOC数据集上使用SSD进行物体检测的训练和验证.本文介绍如何使用SSD实现对自己数据集的训练和验证过程,内容包括: 1 数据集的标注2 数据集的转换3 使用SSD如 ...
- 基于英特尔® 至强 E5 系列处理器的单节点 Caffe 评分和训练
原文链接 在互联网搜索引擎和医疗成像等诸多领域,深度神经网络 (DNN) 应用的重要性正在不断提升. Pradeep Dubey 在其博文中概述了英特尔® 架构机器学习愿景. 英特尔正在实现 Prad ...
- 记一周cdqz训练
#include <cstdio> using namespace std; int main(){ puts("转载请注明出处:http://www.cnblogs.com/w ...
- 1015: [JSOI2008]星球大战starwar
1015: [JSOI2008]星球大战starwar Time Limit: 3 Sec Memory Limit: 162 MB Description 很久以前,在一个遥远的星系,一个黑暗的帝国 ...
- 1014: [JSOI2008]火星人prefix
1014: [JSOI2008]火星人prefix Time Limit: 10 Sec Memory Limit: 162 MB Description 火星人最近研究了一种操作:求一个字串两个后缀 ...
- 语言模型kenlm的训练及使用
一.背景 近期研究了一下语言模型,同事推荐了一个比较好用的工具包kenlm,记录下使用过程. 二.使用kenlm训练 n-gram 1.工具介绍:http://kheafield.com/code/k ...
- LUA中将未分类数据分为测试集和训练集
require 'torch' require 'image' local setting = {parent_root = '/home/pxu/image'} function list_chil ...
随机推荐
- UltraISO制作linux启动盘(包含写入不完整解决方法)
网上教程挺多,主要是自己记录一下.
- Android项目实战(二十九):酒店预定日期选择
先看需求效果图: 几个需求点: 1.显示当月以及下个月的日历 (可自行拓展更多月份) 2.首次点击选择"开始日期",再次点击选择"结束日期" (1).如果&qu ...
- Android 自定义Activity栈对Activity统一管理
转载请注明出处:http://www.cnblogs.com/Joanna-Yan/p/6307239.html public class AppManager { private static St ...
- KVO,看我就够了!
概述 KVO全称Key-Value-Observing,也叫键值监听,是一种观察者设计模式.提供了一种机制,当指定的对象的属性被修改后,对象就会收到一个通知.也就是说每次指定的被观察的对象的属性被修改 ...
- jstree获取整棵树的json数据
$("#树ID").jstree(true).get_json();
- C# 6 与 .NET Core 1.0 高级编程 - 38 章 实体框架核心(上)
译文,个人原创,转载请注明出处(C# 6 与 .NET Core 1.0 高级编程 - 38 章 实体框架核心(上)),不对的地方欢迎指出与交流. 章节出自<Professional C# 6 ...
- DB2函数大全
DB2函数大全 函数名 函数解释 函数举例 AVG() 返回一组数值的平均值. SELECTAVG(SALARY)FROMBSEMPMS; CORR(),CORRELATION() 返回一对数值的关系 ...
- C#编程基础->XML系列导航
缘由 最近开发的小程序过程中需要涉及到XML相关操作,突然发现自己对于这知识点了解的太少,急需学习加强.刚好项目的时间也不是很紧急,自己就总结XML相关知识点.一个方面自己学习,一个方面也希望可以帮到 ...
- HTTP学习目录
前面的话 除了HTML.CSS.javascript这三门前端基础知识之外,HTTP恐怕是前端工程师最需要掌握的知识了,它是前端和后端沟通的桥梁,前端工程师需要能够调试HTTP.修复网络传输中可能遇到 ...
- Mybatis实战之TypeHandler高级进阶
上篇文章分享了在项目实战中自定义Mybatis的TypeHandler来处理枚举类型.文章结尾也指出了美中不足之处,那就是每次都需要指定我们自定义的枚举TypeHandler. 随着项目枚举类型的增多 ...