分析

后面的数据,坐标分布太离散,不能用一个二位数组来模拟垃圾分布。因此,考虑用一个数组记录每个垃圾点的位置。

  1. 先根据x坐标、再根据y坐标进行排序。
  2. 再遍历数组中的每一处垃圾点,判断其是否能建回收站(相邻处有无垃圾),在判断对角线的垃圾点数目

    判断的过程中,可以用二分查找减少查找时间,毕竟已经排好序了。
#include <stdio.h>
#include <iostream>
#include <stdlib.h>
#include <algorithm>
using namespace std;
class pos{
public:
int x, y; pos(){ }
pos(int _x, int _y){
x = _x;
y = _y;
}
bool operator==(const pos a){
if(a.x == x && a.y == y) return true;
else return false;
} bool operator<(const pos a) const{
if(x < a.x)
return true;
else if(x == a.x){
if(y < a.y)
return true;
else
return false;
}
else
return false;
} }; int n;
pos a[1002];
int num[5];
int dir1[4][2] = {{1, 0}, {-1, 0}, {0, 1}, {0, -1}};
int dir2[4][2] = {{1, 1}, {-1, 1}, {1, -1}, {-1, -1}}; int main(){
cin >> n;
int x = 0, y = 0;
for(int i = 0;i < n; i++){
scanf("%d %d", &x, &y);
a[i] = pos(x, y);
}
sort(a, a + n); for(int i = 0; i < n; i++){
int flag = 0;
for(int j = 0; j < 4;j++){
flag += binary_search(a, a + n, pos(a[i].x + dir1[j][0], a[i].y + dir1[j][1]));
} if(flag == 4){
flag = 0;
for(int j = 0; j < 4;j++){
flag += binary_search(a, a + n, pos(a[i].x + dir2[j][0], a[i].y + dir2[j][1]));
}
num[flag]++;
} } for(int i = 0;i < 5; i++){
cout << num[i] << endl;
}
return 0;
}

CCF认证 2019-12-3的更多相关文章

  1. 第十八次CSP认证游记 | 2019.12.15

    CSP认证的考试是Haogod介绍的,取得一定成绩之后能有机会参加CCSP的分赛区和全国决赛.这次来参加认证要感谢老师的奔走为我们申请学校的报销,虽然最终因为这不是比赛所以报名费和差旅费下不来,但是老 ...

  2. 小明种苹果(续)第十七次CCF认证

    小明种苹果(续)第十七次CCF认证 题目 原题链接 ](http://118.190.20.162/view.page?gpid=T93) 很高心,在现在CCF CSP可以下载自己当时的答卷了,也就是 ...

  3. NOI2019退役记 upd:2019.12.1

    (我把原来写的东西全部删掉了) AFO. 我退役了,\(\mbox{yyb}\)退役了. 至少,在接下来的日子里,我得投身到文化课,度过快乐的高三生活了. 这两年的\(OI\)生涯给了我很多,让我学会 ...

  4. CCF认证历年试题

    CCF认证历年试题 不加索引整理会死星人orz 第一题: CCF201712-1 最小差值(100分) CCF201709-1 打酱油(100分) CCF201703-1 分蛋糕(100分) CCF2 ...

  5. IDEA下将dubbo简单项目跑Demo(2019.12版)

    项目架构(聚合项目,父子模块) src没用,所以删去 选择maven项目,不用勾选模板骨架,直接main方法,因为不用到服务器 顺序是按照:添加pom依赖-接口实现类-配置文件 项目环境 IDE:In ...

  6. ISTQB认证测试工程师基础大纲(2019.12.25)

    1.本文档目的: 用于生成认证测试员基础级考试题. 本大纲中除了简介和附录外,考核通常包含了所有K1级别的内容,因此,应试者可能会被考到本大纲中要求识别,牢记,或记忆的关键词或概念.在本大纲中,每章开 ...

  7. [转]CISP(注册信息安全专业人员)认证(12天)

    本文转自:http://www.topsec.com.cn/shpx/rzpx/pxkc/cisp/index.htm CISP(注册信息安全专业人员)认证(11天) 中国信息安全产品测评认证中心(C ...

  8. 2019.12.11 java程序中几种常见的异常以及出现此异常的原因

    1.java.lang.NullpointerException(空指针异常) 原因:这个异常经常遇到,异常的原因是程序中有空指针,即程序中调用了未经初始化的对象或者是不存在的对象. 经常出现在创建对 ...

  9. 2019.12.11 java数组练习

    class AmHW { public static void main(String[] args) { /* 统计一个公司三个销售小组中每个小组的总 销售额以及整个公司的销售额.如下所示 第一小组 ...

  10. 2019.12.07 java基础

    编译时报错,叫做编译失败 class Demo01 { public static void main(String[] args) { int a; a=12; System.out.println ...

随机推荐

  1. 阿里云的maven仓库 地址

    <mirror> <id>nexus-aliyun</id> <mirrorOf>central</mirrorOf> <name&g ...

  2. dfs题型二(迷宫问题)

    取自:<王道论坛计算机考研机试指南>6.5节 例 6.7 Temple of the bone(九度 OJ 1461)时间限制:1 秒 内存限制:32 兆 特殊判题:否题目描述:The d ...

  3. DuPan不限速教程

    准备: 1.一个百度网盘链接 2.一个可以切换UA的浏览器, 手机版:via,极速浏览器,Kiwi浏览器(推荐)电脑版:未知 3.你的手和脑子

  4. winform学习(2)窗体属性

    窗体也属于控件(controls) 主窗体:在Main函数中创建的窗体,当关闭主窗体时,整个程序也就关闭了. 如何打开控件属性面板: ①在该控件上单击鼠标右键--属性. ②选中该控件,按F4 窗体常用 ...

  5. eclipse中引入聚合工程

    一般我们在导入项目的时候都是直接import project, 这对普通java 项目,还是 web 项目,或者是单体的项目都是没有问题的,但是在导入聚合项目的时候这样倒入会使maven的子模块没法被 ...

  6. threading 官方 线程对象和锁对象以及条件对象condition

    官方地址:https://docs.python.org/2/library/threading.html#thread-objects 以下只截取condition部分,其他Lock()以及thre ...

  7. codeforce 427 C. Checkposts(tarjan 强连通分量)

    题目链接:http://codeforces.com/contest/427/problem/C 题目大意是有n个junctions,这些junctions之间有m条道路,两两相连,现在在juncti ...

  8. spring boot配置druid数据连接池

    Druid是阿里巴巴开源项目中一个数据库连接池. Druid是一个jdbc组合,包含三个部分, 1.DruidDriver代理Driver,能够提供基于Filter-Chain模式得插件体系2.Dru ...

  9. [NLP]Transformer模型解析

    简介[2] Attention Is All You Need是2017年google提出来的一篇论文,论文里提出了一个新的模型,叫Transformer,这个结构广泛应用于NLP各大领域,是目前比较 ...

  10. Reinforcement Learning Algorithm 资源

    算法源码: https://github.com/ljpzzz/machinelearning https://github.com/imraviagrawal/Reinforcement-Learn ...