欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

CCF CSP 20191202 C++

程序员文章站 2022-05-16 09:10:48
...

试题描述:

试题编号 201912-2
试题名称 回收站选址
时间限制 1.0s
内存限制 512.0MB
问题描述

CCF CSP 20191202 C++

CCF CSP 20191202 C++

CCF CSP 20191202 C++

 

参考代码:

#include<iostream>
using namespace std;

struct Trush{
	int x;
	int y;
};
Trush trush[1000];
int n;

bool Find(int x,int y){
	for(int i=0;i<n;i++){
		if(trush[i].x==x&&trush[i].y==y)
			return true;
	}
	return false;
}

bool Position(Trush t){
	if(Find(t.x-1,t.y)&&Find(t.x+1,t.y)&&Find(t.x,t.y-1)&&Find(t.x,t.y+1))
		return true;
	else 
	    return false;
}

int main(){
	int score[5]={0};
	cin>>n;
	for(int i=0;i<n;i++){
		cin>>trush[i].x>>trush[i].y;
	}
	int count=0;
	for(int i=0;i<n;i++){
		if(Position(trush[i])){
			if(Find(trush[i].x-1,trush[i].y-1)) 
			    count++;
			if(Find(trush[i].x-1,trush[i].y+1)) 
			    count++;
			if(Find(trush[i].x+1,trush[i].y-1)) 
			    count++;
			if(Find(trush[i].x+1,trush[i].y+1)) 
			    count++;
			score[count]++;
			count=0;
		}
	}
	for(int i=0;i<5;i++){
		cout<<score[i]<<endl;
	}
	return 0;
}

结果:

CCF CSP 20191202 C++

相关标签: 2019