上门做美容的网站,芜湖网站,wordpress添加用户注册登录界面,wordpress首页怎么做题目 有 N 棵灌木整齐的从左到右排成一排。爱丽丝在每天傍晩会修剪一棵灌 木, 让灌木的高度变为 0 厘米。爱丽丝修剪灌木的顺序是从最左侧的灌木开始, 每天向右修剪一棵灌木。当修剪了最右侧的灌木后, 她会调转方向, 下一天开 始向左修剪灌木。直到修剪了最左的灌木后再次调转方…题目 有 N 棵灌木整齐的从左到右排成一排。爱丽丝在每天傍晩会修剪一棵灌 木, 让灌木的高度变为 0 厘米。爱丽丝修剪灌木的顺序是从最左侧的灌木开始, 每天向右修剪一棵灌木。当修剪了最右侧的灌木后, 她会调转方向, 下一天开 始向左修剪灌木。直到修剪了最左的灌木后再次调转方向。然后如此循环往复。 灌木每天从早上到傍晩会长高 1 厘米, 而其余时间不会长高。在第一天的 早晨, 所有灌木的高度都是 0 厘米。爱丽丝想知道每棵灌木最高长到多高。 输入格式 一个正整数 N, 含义如题面所述。 输出格式 输出 N 行, 每行一个整数, 第 i 行表示从左到右第 i 棵树最高能长到多高。 思路 自己画了一下n3的时候我画出来是3 1 3也就是比题目少一不知道是不是我画错了(我知道了因为我把要修剪的那棵树修剪当天的高度没计算 )。n 4的时候就发现规律了序号为i的高度 2n- 2*i 且呈对称相等。也就是说分两种情况N分别为奇偶数时。 代码
import os
import sys# 请在此输入您的代码
n int(input())
h1 []
h []
for i in range(1, n//2 1): # 由于是对称的 因此只计算前半部分h1.append(2*n-2*i)
if n % 2 0: # 偶数棵h h1[:] # 深复制h1.reverse() # 逆序后进行拼接h h h1
else:h1.append(2*n-2*(n//2 1))h h1[:] # h h1 为浅复制 共享同一内存 后面对h1逆序排列 #h也会改变 因此这里使用切片的方法进行深复制 注意切片方法只能对第一层进行深复制 即如果存在列表中的列表还是共享的同一内存h1.reverse()h h h1[1:]
for i in h:print(i) Tips 最开始直接使用h h1结果老是不对后面才发现是因为list的深复制浅复制的原因。 直接赋值给h1 实际两个变量使用的是同一内存 对h1进行reverse的时候h也会改变。 使用[:]切片的方式进行复制第一层的list是深复制。 题目 本题为填空题只需要算出结果后在代码中使用输出语句将所填结果输出即可。 小明特别喜欢顺子。顺子指的就是连续的三个数字123、456 等。顺子日期指的就是在日期的 yyyymmdd 表示法中存在任意连续的三位数是一个顺子的日期。 例如 20220123 就是一个顺子日期因为它出现了一个顺子123 而 20221023 则不是一个顺子日期它一个顺子也没有。 小明想知道在整个 2022 年份中一共有多少个顺子日期? 思路 暴力解题使用datetime这个库中的timedelta函数进行日期加对每个日期中是否存在顺子进行判断。 代码
import os
import sys
import datetime# 请在此输入您的代码start datetime.date(2022, 1, 1)
end datetime.date(2023, 1, 1)
count 0
def is_shun(date):daystr(date).replace(-,)#将日期中的-去掉for i in range(6):if int(day[i]) int(day[i1]) - 1 and int(day[i1]) int(day[i2]) - 1:return Truereturn Falsewhile start ! end:if is_shun(start):count 1start datetime.timedelta(days 1)
print(count)