插火把(水题测试2017082501&洛谷1789)
来源:互联网 发布:asp通用查询系统源码 编辑:程序博客网 时间:2024/05/04 04:31
题目链接:插火把
很水。
建立一个数组,然后依次读取每个坐标,然后把不会产生怪的点标上记号,回头数一下即可,
上代码:
#include<bits/stdc++.h>using namespace std;int main(){ int n,m,k; scanf("%d%d%d",&n,&m,&k); int vis[n][n]; memset(vis,0,sizeof(vis)); for(int i=0;i<m;i++){ int x,y; scanf("%d%d",&x,&y); x--;y--; vis[x][y]=1; if(x-2>=0)vis[x-2][y]=1; if(x-1>=0)vis[x-1][y]=1; if(x-1>=0&&y-1>=0)vis[x-1][y-1]=1; if(x-1>=0&&y+1<n)vis[x-1][y+1]=1; if(y-2>=0)vis[x][y-2]=1; if(y-1>=0)vis[x][y-1]=1; if(y+1<n)vis[x][y+1]=1; if(y+2<n)vis[x][y+2]=1; if(x+1<n)vis[x+1][y]=1; if(x+1<n&&y-1>=0)vis[x+1][y-1]=1; if(x+1<n&&y+1<n)vis[x+1][y+1]=1; if(x+2<n)vis[x+2][y]=1; } for(int i=0;i<k;i++){ int x,y; scanf("%d%d",&x,&y); x--;y--; for(int j=x-2;j<=x+2;j++){ if(j>=0&&j<n){ for(int k=y-2;k<=y+2;k++){ if(k>=0&&k<n){ vis[j][k]=1; } } } } } int ans=0; for(int i=0;i<n;i++){ for(int j=0;j<n;j++){ if(vis[i][j]==0){ ans++; } } } printf("%d",ans); return 0;}
没啥可讲的,注意一下越界判断就行。
阅读全文
0 0
- 插火把(水题测试2017082501&洛谷1789)
- P1789【Mc生存】插火把
- P1789 【Mc生存】插火把
- 测试中的插桩技术
- 软件测试-二进制插桩
- flex 制作火把等效果
- 关于插值的一段测试
- THE LONG TAIL--尾巴上的火把
- <工程数学>Alglib库,测试插值运算
- 插值算法-克里金法(Java jk3d.jar测试过程)
- 开灯(水题测试2017082501&洛谷1876)
- HP 插耳机漏外音问题
- NOIP水题测试(2017082501)
- 第4代白盒测试方法实践之“VcTester插装原理与各种覆盖率配置”
- 查找(顺序、二分、斐波那契和插值)算法的实现和测试
- 顺序表:插、删、改、排,以及十个测试用例
- 单链表(带头):插、删、查、改以及七个测试用例
- 插一道华为的题目,华为就爱这种题
- 基于tensorflow实现AI图片鉴黄(NSFW)
- 电路延迟
- 《python print -> print() 》
- [kuangbin带你飞]专题一 简单搜索 B
- 01-border,padding,margin,color
- 插火把(水题测试2017082501&洛谷1789)
- 树状数组入门
- Kotlin 第四章:Kotlin 基础之包、控制流、返回与跳转
- Redis使用-java-Jedis
- python读写excel文件
- 【Linux学习笔记】15:挂载命令
- python 学习2
- JavaScript学习笔记(DOM脚本)
- 第二章 selenium动态网页请求和模拟jobbole登陆