u1s1,虽然学过C++的同学都说python简单,但是真正写起来题才发现自己可能过于自信了,鉴于python里面用list取代了数组,但是多维数组的实现就很麻烦了,,,,,况且python的输入input函数相比于C++的cin也不知道复杂了多少,光是循环输入数组数据就令我头疼了好久。。。。。卡在这道题上有两天了,实在没什么进展还很烦躁,最后不得不求助了大师兄才得到了ac代码,现在就来好好的分析一下吧:
先上代码:
a=[]
b=[]
g=[]
k=[]
n=int(input())
res=-1
for i in range(0,n,1):
a1,b1,g1,k1 = map(int,input().split())
a.append(a1)
b.append(b1)
g.append(g1)
k.append(k1)
x,y = map(int,input().split())
for i in range(n):
if(x>=a[i] and x<=a[i]+g[i] and y>=b[i] and y<=b[i]+k[i]):
res=i+1
print(res)
首先,大师兄选择用四个一维数组代替二维数组,真的是机智(我怎么就想不到,,,,)
这道题最大的收获就是输入方面,
a1,b1,g1,k1 = map(int,input().split()) 首先用input().split()默认用空格作为分隔,接受四个整数,然后用map函数将四个整数都转化为int型赋给我们的数组
到了输入的阶段就需要用到map()函数和input().split()函数了,这两个函数解析如下:
https://www.runoob.com/python/python-func-map.html
不知道CSDN怎么粘贴图片,只能放链接方便自己查看了QNQ