对于上下左右4个方向,可以用二进制来标记每个方向是否有垃圾,有则二进制位为1,没有则为0,即,用1,2,4,8表示上下左右四个方向,变量s表示四个方向的总状态,初始为0,上面有垃圾则s+1,下面有垃圾则s+2,检测完四个方向若s的值为15则表示四个方向都有垃圾,可以作为回收站,否则不能作为回收站 对于四个角的方...
输出用五行,每行一个整数,依次表示得分为0、1、2、3和4的回收站选址个数。样例1输入7 1 2 2 1 0 0 1 1 1 0 2 0 0 1 样例1输出0 0 1 0 0 样例1解释样例2输入2 0 0 -100000 10 样例2输出0 0 0 0 0 样例2解释不存在可选地址
回收站选址from CCF-CSP 2019-12-2Time limit:1sMemory limit:512MB这个题目n的个数是1000,所以是可以直接O(n2)暴力解决的,我们在嵌套循环里面分别记录某个点上下左右垃圾的个数和对角位置垃圾的个数,如果上下左右四个位置都存在垃圾,那么这个点是适合建立垃圾回收站的,进而把得分存入score数组就可...
因为最大有1000个点,可以再定义一个点的数组来存放输入的点。 2.点存储了之后我们就可以来对数据进行处理了,首先遍历数组得到可以作为选址点的Node,将可以作为选址点的Node用一个容器(vector)存起来。 3.我们得到可以用作选址的点之后,就可以对每个点进行评分了,然后将评分结果输出就ok了! #include<iostream> #...
简介:CCF小白刷题之路---201912-2 回收站选址(C/C++ 100分) 一、题目描述 二、代码实现 #include<iostream>#include<bits/stdc++.h>usingnamespacestd;//构造结构体存放每一个点structNode{longlongx;longlongy; }; Node node[1005];//判断点(x,y)是否有垃圾booltrash(longlongx,longlongy,intn){for...
201912-2回收站选址 题目: 代码: importjava.util.Scanner;publicclassReturnRubish{staticint[]x;staticint[]y;publicstaticvoidmain(String[]args){intn;Scannerscan=newScanner(System.in);n=scan.nextInt();x=newint[n+1];y=newint[n+1];for(inti=1;i<=n;i++){x[i]=scan.nextInt();y[i]=...
201912-2 回收站选址 C++ 总结 本题链接:201912-2 回收站选址 本博客给出本题截图: C++ #include<iostream>#include<cstring>#include<algorithm>#definexfirst#defineysecondusingnamespacestd;typedefpair<int,int>PII;constintN=1010;intn;PII q[N];intans[5];intdx[8]={-1,-1,-1,0,1,1,1,0};...
CCF 201912-2 回收站选址 开发技术 - 其它di**ds 上传86KB 文件格式 pdf 题目 C++代码: #include #include using namespace std; class point{ public: point operator()(int a,int b){ point apt; apt.x=a; apt.y=b; return apt; } bool operator<(const point &apt) const{ if(x!=apt...
CCF201912-2 回收站选址 解题思路:这道题唬人的在于坐标有正有负哈,刚开始不知道怎么下爪,仔细思考过后,我可是会面向对象编程的啊哈哈哈哈,我可是最喜欢封装了哈哈哈哈。 1.首先可以把每个点用一个结构体来定义,包含他的x,y坐标,以及该点的得分情况。因为最大有1000个点,可以再定义一个点的数组来存放输入的...
CCF认证 201912-02 回收站选址 (100分) // INFO BEGIN // Group = C/C++ // Problem = 回收站选址 // Language = CPP11 // SubmitTime = 2019-12-15 15:04:48 // // INFO END #include<iostream> #include<cstdio> #include<algorithm> ...