刷题随笔 day1

题目一

解答

 思路:把感兴趣的数字当做一个字符串,将1-40的数转化为字符与字符串比较,使用for循环1-n个数,查看是否在字符串内,如果在就将他进行加和。

str()函数:将整型数字转化为字符串的形式。

题目二

 解答

 感觉这个题思路比较简单,就是卡在了百分数的转化。同时要注意60-85区间的if语句,不能只写<60,否则当>85时下面一个if也不会执行。

百分数的表达:

        1.{:.2%}、{:.1%}、{:.0%}  :其中的0、1、2表示显示小数点后几位

                例如:print('{:.0%}'.format(a/b))

        2.{:.2f}% :需要先格式化为float,在处理为百分数

                例如:print('{:.2f}%'.format(a/b*100))

区别:第二种方式将%放在{}之外,但是format中的数需要*100

题目三

 

解答:

 

 

 写麻了这个题....刚开始只想用一个二维数组实现并且一直觉得他是对的,将n×m的方格设为值全为0的二维数组,使用for循环将水管处的值设为1,在套用3层循环每分钟遍历一次方格,将值为1的方格周围存在的值都变为1。

如果只使用一个二维数组,就会导致在一个方格将周围值变为1 后,在这个方格后面遍历的变为1的周围的方格会提前喷发,导致结果变大,所以必须引入一个新的数组,将每次变为一的方格单独存储到新的数组中。最后遍历数组中值为1的方格进行加和。

知识点:

二维数组的表示:a = [[0 for in range(m)] for in range(n)]

        其中n是行数,m是列数。

同时在一行输入多个数:r,c = map(int,input().split())

 

2022.11.6记

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值