Не могу понять, как использовать глобальные переменные в python - PullRequest
0 голосов
/ 09 апреля 2020

Так что это проблема Codewars, которую я пытаюсь решить, и в основном я узнал все, что знаю python, узнав по этому сайту. Поэтому я попытался сделать ограничение программирования в этой проблеме. Я думаю, что я в правильном направлении, но «count», кажется, не выполняет свою работу, то есть count _-.-_ / Это действительно помогло бы, если бы вы могли направить меня в правильном направлении. Спасибо!

проблема Вам дан определенный массив положительных и отрицательных целых чисел, элементы которых встречаются только один раз (все они отличаются от 0), определенное число, известное как target, t, t ≠ 0 и число k, k> 0.

Вы должны найти количество комбинаций, числа которых не являются смежными элементами данного массива, а какие суммы (складывая их числа) находятся в диапазоне [ t - k, t + k]

Мой код:

count=0    
def check_sum(arr,lb,ub,vlb,vub,add,wh):
    global count
    if(vlb>vub):
        return
    if wh==1:
        val=arr[vub]
        vub-=1
    else:
        val=arr[vlb]
        vlb+=1
    if add+val>ub:
        if add+val+arr[vlb]<ub:
            check_sum(arr,lb,ub,vlb,vub,add,0)
    elif add+val<lb:
        if add+val+arr[vub]>lb:
            check_sum(arr,lb,ub,vlb,vub,add,1)
    else:
        count+=1
        check_sum(arr,lb,ub,vlb,vub,add,1)
        check_sum(arr,lb,ub,vlb,vub,add,0)




def find_comb_noncontig(arr, t, k):
    # your code here
    arr.sort()

    check_sum(arr,t-k,t+k,0,len(arr)-1,0,1)
    check_sum(arr,t-k,t+k,0,len(arr)-1,0,0)

    return count

В этом коде есть некоторая проблема, которую, как мне кажется, я не понимаю в отношении 'count'

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...