每天一道python编程-洛谷P1003

  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

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值