Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import random
- import numpy as np
- def build_array(n, m):
- x = [random.randint(1, n-m+1)]
- n_ = n
- for i in range(1, m-1):
- n_ -= x[i-1]
- x.append(random.randint(1, n_-m+i+1))
- x.append(n-sum(x))
- return x
- def solve():
- n, m = map(int, input('Введите n и m: ').split())
- if m > n:
- raise ValueError('n cannot be less than m!')
- return
- a = [random.randint(1, 9) for _ in range(n)]
- b = build_array(n, m)
- print('Массив Z(n):', a)
- res = []
- l, r = 0, 0
- for i in range(m):
- l, r = r, r+b[i]
- res.append(a[l:r])
- res[i].extend((max(b)-b[i])*[0])
- print('Матрица A:')
- print(np.array(res))
- if __name__ == '__main__':
- solve()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement