阿里 3.25
class Solution:
def Isclear(self,input1):
size=input1[0]
n=size[0]
m=size[1]
q=size[2]
if q==0:
return []
if m==[]:
return []
matrix=input1[1:n+1]
ma=matrix
qo=input1[n+1:]
res=[]
for tq in range(q):#对每个问题
h=qo[tq][0]-1
l=qo[tq][1]-1
if ma[h][l]!=0:
res.append(ma[h][l])
if ma[h][l]==0:
#同行有超过1个大于0的数吗
dt1=[] #duiying de lie
dv1=[] #对应的值
hg=0#mei hang ge shu
haveans=0
for t1 in range(m):
if ma[h][t1]!=0:
dt1.append(t1)
dv1t=ma[h][t1]
dv1.append(dv1t)
hg=hg+1
if hg>1:
gc=(dv1[1]-dv1[0])/(dt1[1]-dt1[0])
#l
lv=dv1[0]+(l-dt1[0])*gc
res.append(lv)
haveans=1
break
if haveans==1:
continue
#同列有大于0的数吗
dt2=[] #duiying de lie
dv2=[] #对应的值
lg=0#mei hang ge shu
for t2 in range(n):
if ma[t2][l]!=0:
dt2.append(t2)
dv2t=ma[h][t2]
dv2.append(dv2t)
lg=lg+1
if lg>1:
gc=(dv2[1]-dv2[0])/(dt2[1]-dt2[0])
#l
hv=dv2[0]+(l-dt2[0])*gc
res.append(hv)
haveans=1
if haveans==1:
continue
if haveans==0:
res.append('Unknown')
return res
A=Solution()
print(A.Isclear([[2,3,3],[1,0,3],[0,0,0],[1,1],[1,2],[2,2]])) 