Subarray Division 1

dogit·2021년 11월 24일
0

python문제

목록 보기
9/13

문제

코드

from functools import reduce

s = [2,2,1,3,2]
d = 4
m = 2

def add(a, b):
    return a+b

def birthday(s, d, m):

    count = 0

    for i in range(len(s)):
        temp_list = s[i:i+m] # 길이 m 만큼 부분배열 생성
        if reduce(add, temp_list) == d:
            count += 1
        
    return count

새로 알게된 지식

reduce()
reduce()는 from functools import reduce functools의 reduce를 import해야 사용 할 수 있는 함수이며
reduce(적용할 함수, 함수에 넣을 파라미터)로 이루어져 있다.
ex)
def add(a, b):
return a+b
reduce(add, temp_list)

temp_list의 element가 파라미터가 되어 add함수에 적용되고 그 결과값이 return된다.

출처

https://www.hackerrank.com/challenges/one-month-preparation-kit-the-birthday-bar/problem?h_l=interview&isFullScreen=false&playlist_slugs%5B%5D=preparation-kits&playlist_slugs%5B%5D=one-month-preparation-kit&playlist_slugs%5B%5D=one-month-week-one

profile
느리더라도 꾸준하게

0개의 댓글