C++题解
#include<iostream>
using namespace std;
pair<int,int> pii[205];
int main()
{
int n,k,t,x1,y1,x2,y2;
int in=0;//经过
int stay=0;//逗留是连续的
cin>>n>>k>>t>>x1>>y1>>x2>>y2;
for(int i=0;i<n;i++){
int num=0;
int flag=0;
int max_num=0;
for(int j=0;j<t;j++){
int a,b;
cin>>a>>b;
if(flag &&(a<x1 || a>x2||b<y1||b>y2)) {
flag=0;
num=0;
}
if(a>=x1 && a<=x2 && b>=y1 && b<=y2){
num++;
flag=1;
}
if(num>max_num) max_num=num;
}
if(max_num) in++;
if(max_num>=k) stay++;
}
cout<<in<<endl;
cout<<stay;
return 0;
}
这是一个C++程序,用于读取一系列坐标点,并计算在给定矩形(x1,y1)到(x2,y2)内停留超过k次的点的数量。程序首先初始化计数器,然后遍历所有点,根据点是否在矩形内更新最大停留次数。最后输出经过矩形的点数和停留次数大于等于k的点数。
5039

被折叠的 条评论
为什么被折叠?



