n,k,t,x1,yd,xr,yu=map(int,input().split())
d=[]
for i in range(n):#三维列表记录数据
u=[]
a=list(map(int,input().split()))
m=[]
for i in range(len(a)):
m.append(a[i])
if i%2==1:#每两个为一个坐标 断开分组
u.append(m)
m=[]
d.append(u)
def f(x):#设函数判断坐标是否在感染区域
a=x[0]
b=x[1]
if x1<=a<=xr and yd<=b<=yu:
return 1
else:
return 0
count1=0
for i in d:
for j in i:
if f(j)==1:
count1+=1
break
else:
continue
def g(x):#设函数判断一个人是否逗留
l=[]
h=[]
value=0
count2=0
for i in x:
l.append(f(i))#利用函数改写为01数组
for o in l:
if o==1:
count2+=1
h.append(count2)
else:
count2=0#如果坐标不在感染区,就将计数器归零(保证连续)
h.append(count2)
for i in h:
value=max(value,i)#找到最大连续数
if value >=k:#进行比较判断是否逗留
return 1
else:
return 0
ans=0
for i in d:
if g(i)==1:
ans+=1
print(count1)#经过的
print(ans)#逗留的
CCF认证2020-9 python 第二题
最新推荐文章于 2024-11-11 21:30:41 发布