该计划的目的是找到至少2个圆圈交叉点的那些点。(空间是1000x1000矩阵)
n=input()
mat=[[0 for i in range(1005)] for i in range(1005)]
circles=[]
for i in range(n):
circles.append(map(int,raw_input().split()))
ans=0
for circle in circles:
minx=circle[0]-circle[2]
maxx=circle[0]+circle[2]
miny=circle[1]-circle[2]
maxy=circle[1]+circle[2]
for i in range(minx,maxx+1):
for j in range(miny,maxy+1):
if mat[i][j]<=1:
if ((i-circle[0])**2+(j-circle[1])**2)<=(circle[2]**2):
mat[i][j]+=1
if mat[i][j]>1:
ans+=1
print ans
n表示圆的数量 圆圈包含圆心和半径,格式为[x,y,r],例如,让圆圈= [[3,2,4],[2,5,2]],然后它包含两个以(3,2)为中心的圆圈(2,5)分别为半径4和2。
逻辑是否正确?...会触发任何异常吗?