ins = '''
2022年4月26日 星期二
線段覆蓋長度
d = [0 for i in range(1000+1)]
instr = '''5
160 180
150 200
280 300
300 330
190 210'''
d1 = [i for i in instr.strip().split()]
n = int(d1[0])
# d1.remove(d1[0])
d1.pop(0)
d1 = [int(i) for i in d1]
d2 = []
for i in range(0,len(d1),2):
t = [d1[i],d1[i+1]]
d2.append(t)
for i in d2:
a,b = i[0],i[1]
for j in range(a,b+1):
d[j] = 1
d = [str(i) for i in d]
d = ''.join(d)
d = d.split('0')
d = [i for i in d if i!='']
s = 0
for i in d:
t = i.split('2')
t = [i for i in t if i!='']
p = [i.count('1')-1 for i in t]
s+=sum(p)
print(s)
2022年4月25日 星期一
矩陣轉換
def tt(a):
return a[::-1]
# a = [[1,1],
# [1,3],
# [2,1],
# [5,6],
# ]
a = [[1,1,8],
[1,3,7],
[2,1,6],
[5,6,5],
]
# a = [[1,1],
# [1,3],
# [2,1],
# ]
print(a)
cur = tt(a)
print(cur)
def rr(a):
m = len(a[0])
n = len(a)
b =[ [0 for i in range(n)] for j in range(m)]
for i in range(m):
for j in range(n):
b[i][j] = a[n-1-j][i]
return b
cur = rr(cur)
print(cur)
cur = rr(cur)
print(cur)
定時K彈
# n = 5
# m = 2
# k = 4
# a = [i+1 for i in range(5)]
# # print(a)
# i = 1
# while (len(a)>1):
# t = a.pop(0)
# # print(t)
# if i%2!=0:
# a.append(t)
# # print(a)
# i+=1
# print(a[0])
n = 5
m = 2
k = 4
a = [i+1 for i in range(10)]
# print(a)
i = 1
while (k>=1):
t = a.pop(0)
# print(t)
if i%2!=0:
a.append(t)
# print(a)
else:
k-=1
i+=1
print(a[0])
2022年4月21日 星期四
插入排序學習
d = [int(i) for i in '3,5,1,4,2,7,9,6'.split(',')]