• 약수의 합
def solution(n):
    answer = 0
    for i in range(1,n+1):
        if n%i==0:
            answer+=i
        
    return answer

<남의 풀이: 람다식>

def sumDivisor(num):
    return sum(filter(lambda x: num % x == 0, range(1, num + 1)))

 

 

 

  • 문자열 내 p와 y의 개수
    def solution(s):
        answer = True
        p=0
        y=0
        for i in s:
            if(i=="p" or i == "P"):
                p+=1
            elif(i=="y" or i=="Y"):
                y+=1
        if(p!= y):
            answer =False
        return answer​

<남의 풀이 : 집계함수 > --모두 다 소문자로 바꾼다. 함수를 잘쓰자.

def solution(s):
    # 함수를 완성하세요
    return s.lower().count('p') == s.lower().count('y')

 

'p', 'y' 모두 하나도 없는 경우는 항상 True를 리턴합니다. 단, 개수를 비교할 때 대문자와 소문자는 구별하지 않습니다.

 

 

 

  • 같은 숫자는 싫어
    def solution(arr):
        answer = [arr[0]]
        
        for i in range(1,len(arr)):
            if arr[i] !=arr[i-1]:
                answer.append(arr[i])
    
        return answer​

<다름사람풀이: [-1:] 슬라이싱>

def solution(s):
    a = []
    for i in s:
        if a[-1:] == [i]: continue
        a.append(i)
    return a

 

 

  • 가운데글자 가져오기
    def solution(s):
        return s[(len(s)-1)//2:len(s)//2+1]​

 

  • x만큼 간격이 있는 n개의 숫자
    def solution(x, n):
        answer = []
        for i in range(1,n+1):
            answer.append(x*i)
        return answer​
    def solution(x, n):
        # 함수를 완성하세요
        return [i * x + x for i in range(n)]​
def solution(x, n):
    # 함수를 완성하세요
    return [i for i in range(x, x*n+1, x)]

'코드테스트' 카테고리의 다른 글

코딩테스트 lv.1 - 파이썬  (0) 2021.06.18
5.해쉬함수  (0) 2021.06.18
4.진법변환/비트연산  (0) 2021.06.17
3. 깊이우선탐색/ 너비탐색  (0) 2021.06.02
2.완전탐색/ 이분탐색  (0) 2021.05.30

+ Recent posts