sohyeon kim

[Python] 프로그래머스 : 홀짝에 따라 다른 값 반환하기 181935, for in 본문

Coding Test

[Python] 프로그래머스 : 홀짝에 따라 다른 값 반환하기 181935, for in

aotoyae 2024. 2. 17. 17:39
728x90

 

 

📝 문제

양의 정수 n이 매개변수로 주어질 때, n이 홀수라면 n 이하의 홀수인 모든 양의 정수의 합을 return 하고 n이 짝수라면 n 이하의 짝수인 모든 양의 정수의 제곱의 합을 return 하는 solution 함수를 작성해 주세요.

 

🫠 나의 풀이

def solution(n):
    result = 0

    if n%2:
        for i in range(1, n+1, 2): # 1부터 시작해 n까지 두 개 간격으로 반복문을 돈다.
            result += i
    else:
        for i in range(2, n+1, 2): # 2부터 시작해 n까지 두 개 간격으로 반복문을 돈다.
            result += i*i
    
    return result

 

🧞‍♂️ 다른 사람의 풀이

def solution(n):
    if n%2:
        return sum(range(1, n+1, 2))
    return sum([i*i for i in range(2, n+1, 2)]) # for문을 돌며 나온 i의 제곱으로 리스트를 만든다.

 

for 문으로 리스트 만드는 방식에 익숙해져야겠다.

 

 

 

🔗 https://school.programmers.co.kr/learn/courses/30/lessons/181935?language=python3

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

 

 

728x90
반응형