Загрузка...

Write a small function for a chocolat (Python)

Thread in Python created by ivy Mar 11, 2020. 195 views

  1. ivy
    ivy Topic starter Mar 11, 2020 エリア内の最も愚かな 123 Feb 26, 2018
    [IMG]

    # Написать функцию split_and_add(arr, n), на вход которой приходит список чисел arr и количество итераций
    # выполнения n. На каждой итерации необходимо делить спсиок на два и возвращать список поэлементных сумм.
    #
    # Пример:
    # split_and_add([1,2,3,4,5], 2)
    # итерация 1 итерация 2
    # разбиение [1,2] и [3,4,5] разбиение [3] и [5,7]
    # сумма + [1,2] сумма + [3]
    # [3,4,5] [5,7]
    # = [3,5,7] = [5,10] (ответ)



    import traceback


    def split_and_add(arr, n):
    # Тело функции
    return []


    # Тесты
    try:
    assert split_and_add([1,2,3,4,5], 2) == [5,10]
    assert split_and_add([1,2,3,4,5], 3) == [15]
    assert split_and_add([32,45,43,23,54,23,54,34], 2) == [183, 125]
    except AssertionError:
    print("TEST ERROR")
    traceback.print_exc()
    else:
    print("TEST PASSED")
     
  2. w_0_n_k_a
    w_0_n_k_a Mar 11, 2020 149 Mar 10, 2019
    А скопировать не судьба?!
     
  3. ivy
    ivy Topic starter Mar 11, 2020 エリア内の最も愚かな 123 Feb 26, 2018
    w_0_n_k_a,
    # Написать функцию split_and_add(arr, n), на вход которой приходит список чисел arr и количество итераций
    # выполнения n. На каждой итерации необходимо делить спсиок на два и возвращать список поэлементных сумм.
    #
    # Пример:
    # split_and_add([1,2,3,4,5], 2)
    # итерация 1 итерация 2
    # разбиение [1,2] и [3,4,5] разбиение [3] и [5,7]
    # сумма + [1,2] сумма + [3]
    # [3,4,5] [5,7]
    # = [3,5,7] = [5,10] (ответ)



    import traceback


    def split_and_add(arr, n):
    # Тело функции
    return []


    # Тесты
    try:
    assert split_and_add([1,2,3,4,5], 2) == [5,10]
    assert split_and_add([1,2,3,4,5], 3) == [15]
    assert split_and_add([32,45,43,23,54,23,54,34], 2) == [183, 125]
    except AssertionError:
    print("TEST ERROR")
    traceback.print_exc()
    else:
    print("TEST PASSED")
     
  4. tialo
    tialo Mar 11, 2020 1 Mar 11, 2020
    ivy,
    def split_and_add(arr, n):
    arr1, arr2, new_arr = [], [], []
    for i in range(n):
    for j in range(len(arr) // 2):
    arr1.append(arr[j])
    arr2.append(arr[-j-1])
    arr2 = arr2[::-1]
    if len(arr) % 2 != 0:
    arr2 = arr2[::-1]
    arr2.append(arr[len(arr) // 2])
    arr2 = arr2[::-1]
    for j in range(len(arr1)):
    new_arr.append(arr1[-j-1]+arr2[-j-1])
    if len(arr) % 2 != 0:
    new_arr.append(arr2[0])
    arr = new_arr[::-1]
    arr1, arr2, new_arr = [], [], []
    return(arr)


    тут нормально https://pastebin.com/EWVjdEfy
     
Loading...
Top