Python

Помогите с 3 задачами на питон 3!!! пожалуйста!!

1)
Заполнение змейкой
По данным числам ? и ? заполните двумерный массив размером ?×? числами от 1 до ?⋅? «змейкой», как показано в примере.
Входные данные
Вводятся два числа ?⩽40 и ?⩽40.
Выходные данные
Выведите полученный массив.
2)
Слева направо, сверху вниз Даны два числа ? и ?. Создайте двумерный массив размером ?×? и заполните его в соответствии с примером. Данную задачу необходимо решить с помощью генератора, который заполнит матрицу ?. Вы должны отправить на проверку единственную строку вида: A = [текст генератора]
Ввод
4 4
Вывод
0 1 2 3
4 5 6 7
8 9 10 11
12 13 14 15
3)
Сверху вниз, слева направо
Даны два числа ? и ?. Создайте двумерный массив размером ?×? и заполните его в соответствии с примером. Данную задачу необходимо решить с помощью генератора, который заполнит матрицу ?. Вы должны отправить на проверку единственную строку вида:
A = [текст генератора]
Ввод
5 6
Вывод
0 5 10 15 20 25
1 6 11 16 21 26
2 7 12 17 22 27
3 8 13 18 23 28
4 9 14 19 24 29
Заранее спасибо!!
1.
 n, m = map(int, input().split())
A = [[*range(m * i + 1, m * (i + 1) + 1)][:: 1 - i % 2 * 2] for i in range(n)]
for r in A: print(*r)
Пример ты опубликовать не удосужился. Что получилось, то получилось.

2.
 A = [[*range(m * i, m * (i + 1))] for i in range(n)] 
3.
 A = [[n * i + j for i in range(m)] for j in range(n)] 
ОН
Орегелди Нуржанов
57 411
Лучший ответ
Александр Смирнов спасибо огромное ♥︎
Конечно, я помогу вам с этими задачами на Python 3. Вот решения:

1) Заполнение змейкой:

```python
n, m = map(int, input().split())

matrix = [[0] * m for _ in range(n)]
num = 1

for i in range(n):
if i % 2 == 0:
for j in range(m):
matrix[i][j] = num
num += 1
else:
for j in range(m - 1, -1, -1):
matrix[i][j] = num
num += 1

for row in matrix:
print(*row)
```

2) Слева направо, сверху вниз:

```python
n, m = map(int, input().split())

matrix = [[i * m + j for j in range(m)] for i in range(n)]

for row in matrix:
print(*row)
```

3) Сверху вниз, слева направо:

```python
n, m = map(int, input().split())

matrix = [[i + j * n for i in range(n)] for j in range(m)]

for row in matrix:
print(*row)
```

Вы можете ввести данные с клавиатуры и увидеть результат.
DA
Daur Aytan
324
Евгений Холмов Ты хоть маскируй эти "Конечно, я помогу вам...". А то слишком уж ясен перец что "помогаешь" не ты, а чатГПТ
Александр Смирнов верно только 2