提交地址:http://codevs.cn/problem/3016/

3016 质子撞击炮 II

 时间限制: 1 s
 空间限制: 32000 KB
 题目等级 : 黄金 Gold
 
 
题目描述 Description

【抱歉数据错误~~已修复】

欧盟简直是太贪心了。继完成与苏联的合作灭了尤里之后,继续与苏联交战。可惜的是,在这期间,传说中的小日本(旭日帝国·升阳帝国)居然强大起来了。盟军重新与苏联合作,准备歼灭日本。在小爱(爱因斯坦)之后,不少盟军的杰出科学家合作发明了闪电风暴二代:质子撞击炮。它的好处就是冷却时间短,威力大。每当一次攻击过后,五发质子能量炮弹一齐落在敌人基地里,造成毁灭性的打击。缺点就是,炮弹先打到外太空再掉进敌人家中,飞的时间太长了。盟军老大迫不及待的想知道这次攻击能毁掉日本多少建筑物,请你编程帮忙算一下。数据详见输入描述。

输入描述 Input Description

输入的第一行n,表示敌方阵营的大小。

输入的第2~n+1,表示输入一个敌方阵营图。阵营图中每个元素由0-9组成。0表示没有建筑物,其余数字表示当前建筑物的血量值。(默认每个建筑物占一个方格)。

输入的接下来五行,表示五发质子能量炮弹的落点中心,表示落点在笛卡尔坐标系的某个点上。质子能量炮弹对中心造成2点伤害,对以该点为九宫格中心的其他八个方格造成一点伤害。如果某个点的建筑物血量被轰击至0或更低,则称这个建筑物被击毁。

输出描述 Output Description

仅一行,被击毁的建筑物数量。

样例输入 Sample Input

5

0 3 1 2 4

1 3 4 1 0

0 0 3 4 1

1 3 4 5 0

0 0 9 0 0

1 2

2 2

4 3

4 3

2 4

样例输出 Sample Output

8

数据范围及提示 Data Size & Hint

(点a,点b)表示第a行第b列

原题有误,我更正一下。

顺便加强了数据(最大1000*1000的邻接矩阵);

 #include<cstdio>
int x,y;
int n;
int a[+][+];
bool b[+][+];
int dx[]={,,,,,,-,-,-};
int dy[]={,,,-,,-,,,-};
void daji(int x,int y)
{
a[x][y]-=;
for(int i=;i<=;i++)
a[x+dx[i]][y+dy[i]]-=;
}
int main()
{
scanf("%d",&n);
for(int i=;i<=n;i++)
for(int j=;j<=n;j++)
{
scanf("%d",&a[i][j]);
if(a[i][j]!=) b[i][j]=;
}
for(int i=;i<=;i++)
{
scanf("%d%d",&x,&y);
daji(x,y);
}
int ans=;
for(int i=;i<=n;i++)
for(int j=;j<=n;j++)
if(a[i][j]<=&&b[i][j]==true)
ans++;
printf("%d",ans);
return ;
}

codevs 3061 质子撞击炮②的更多相关文章

  1. 3016 质子撞击炮 II

    3016 质子撞击炮 II  时间限制: 1 s  空间限制: 32000 KB  题目等级 : 黄金 Gold 题解  查看运行结果     题目描述 Description [抱歉数据错误~~已修 ...

  2. codevs 3289 花匠

    题目:codevs 3289 花匠 链接:http://codevs.cn/problem/3289/ 这道题有点像最长上升序列,但这里不是上升,是最长"波浪"子序列.用动态规划可 ...

  3. codevs 1082 线段树练习 3(区间维护)

    codevs 1082 线段树练习 3  时间限制: 3 s  空间限制: 128000 KB  题目等级 : 大师 Master 题目描述 Description 给你N个数,有两种操作: 1:给区 ...

  4. codevs 1285 二叉查找树STL基本用法

    C++STL库的set就是一个二叉查找树,并且支持结构体. 在写结构体式的二叉查找树时,需要在结构体里面定义操作符 < ,因为需要比较. set经常会用到迭代器,这里说明一下迭代器:可以类似的把 ...

  5. codevs 1576 最长上升子序列的线段树优化

    题目:codevs 1576 最长严格上升子序列 链接:http://codevs.cn/problem/1576/ 优化的地方是 1到i-1 中最大的 f[j]值,并且A[j]<A[i] .根 ...

  6. codevs 1080 线段树点修改

    先来介绍一下线段树. 线段树是一个把线段,或者说一个区间储存在二叉树中.如图所示的就是一棵线段树,它维护一个区间的和. 蓝色数字的是线段树的节点在数组中的位置,它表示的区间已经在图上标出,它的值就是这 ...

  7. codevs 1228 苹果树 树链剖分讲解

    题目:codevs 1228 苹果树 链接:http://codevs.cn/problem/1228/ 看了这么多树链剖分的解释,几个小时后总算把树链剖分弄懂了. 树链剖分的功能:快速修改,查询树上 ...

  8. codevs 1082 线段树区间求和

    codevs 1082 线段树练习3 链接:http://codevs.cn/problem/1082/ sumv是维护求和的线段树,addv是标记这歌节点所在区间还需要加上的值. 我的线段树写法在运 ...

  9. codevs 1052 地鼠游戏

    1052 地鼠游戏 http://codevs.cn/problem/1052/ 题目描述 Description 王钢是一名学习成绩优异的学生,在平时的学习中,他总能利用一切时间认真高效地学习,他不 ...

随机推荐

  1. MySQL之索引详解

    这篇博客将要阐述为什么使用b+树作为索引,而不是b树或者其他树 1.什么是b树 (图片来自网络) b树相关特性:⑴关键字分布在整棵树中 ⑵任何一个关键字只出现在一个节点上 ⑶搜索可能在非叶子节点上结束 ...

  2. hibernate框架学习笔记12:查询优化

    类级别查询优化: 创建一个实体类: package domain; import java.util.HashSet; import java.util.Set; //客户实体 public clas ...

  3. 《统计学习方法》P89页IIS的中间步骤Zw+δ(X)/Zw(X)的推导

    共有两个方法:

  4. Alpha冲刺No.10

    一.站立式会议 我们的阿尔法冲刺也基本宣告血崩,虽然很多功能已经实现,但是并没有串联在一起,好在这周不需要上课,我们也能好好睡一觉 实现手机的定位系统 细化界面设计 解决数据库和软件交互的一些问题 二 ...

  5. localhost访问不了的解决方法

    c:\windows\system32\drivers\etc\hosts 用记事本打开,加入一行 127.0.0.1       localhost

  6. iOS开发-即时通信XMPP

    1. 即时通信 1> 概述 即时通讯(Instant Messaging)是目前Internet上最为流行的通讯方式,各种各样的即时通讯软件也层出不穷,服务提供商也提供了越来越丰富的通讯服务功能 ...

  7. JAVA_SE基础——44.抽象类的练习

    抽象类要注意的细节: 1. 如果一个函数没有方法体,那么该函数必须要使用abstract修饰,把该函数修饰成抽象 的函数..2. 如果一个类出现了抽象的函数,那么该类也必须 使用abstract修饰. ...

  8. windows安装gcc编译器

    由于vc6.0对c语言编译不是很好,有些语句是正确的,但是编译却不能通过 所以决定在windows中安装gcc编译器来使用! http://www.cnblogs.com/cryinstall/arc ...

  9. Struts2 配置文件小结

    每次写的博文都被管理员都被移出首页,好气!还希望有哪位大神可以指点迷津-- struts2 配置文件的 result 节点 result 节点是 action 节点的子节点,他代表着 action 方 ...

  10. SpringCloud用户自定义配置信息的定义和查看

    一.概念 在SpringCloud项目中,用户自己定义的配置信息也可以放在application.*,需要以 info打头,以便使用公用基础设施 /info 查看! 本文讲解基于 ConfigServ ...