【CCF——202009-2】風險人群篩查(另類思路)

2020-10-03 12:01:10

在這裡插入圖片描述
在這裡插入圖片描述
在這裡插入圖片描述
在這裡插入圖片描述

這道題感覺做的麻煩了,正確之後看了其他人的程式碼,果然是我做麻煩了。。不過這是我第一次想到的思路,總之沒錯就是好的,畢竟誰也不是每次上來都能用最簡單的方法做,注意每個人不能重複計數就好了。想看簡單的程式碼思路的話,可以參考其他人的程式碼,我的是一種另類思路
#include <iostream>
using namespace std;

int main(){
	ios::sync_with_stdio(false);
	cin.tie(0),cout.tie(0);
	int n,k,t,xl,yd,xr,yu;
	cin >> n >> k >> t >> xl >> yd >> xr >> yu;
	int cnt1 = 0,cnt2 = 0;
	bool flag[n] = {false};
	int x[t],y[t];
	for(int i = 0;i<n;i++){
		for(int j = 0;j<t;j++){
			cin >> x[j] >> y[j];
			if(x[j]>=xl&&x[j]<=xr&&y[j]>=yd&&y[j]<=yu){
				if(!flag[i]){
					flag[i] = true;
					cnt1++;
				}
			}
		}
		for(int j = 0;j<=t-k;j++){
			int p;
			for(p = j;p<j+k;p++){
				if(x[p]>=xl&&x[p]<=xr&&y[p]>=yd&&y[p]<=yu)
					continue;
				else
					break;
			}
			if(p==j+k){
				cnt2++;
				break;
			}
		}
	}
	cout << cnt1 << endl;
	cout << cnt2;
	return 0;
}