[프로그래머스] Lv1. 두 정수 사이의 합

CHAEN·2022년 3월 11일
0

problem solving

목록 보기
8/33
post-thumbnail

문제

접근 방법

  • range를 이용하여 두 정수 사이의 값들을 리스트로 생성
  • sum 함수를 통해 정답 도출

이전에 C++로 풀었던 내용

#include <string>
#include <vector>

using namespace std;

long long solution(int a, int b) {
    long long answer = 0;
    
    if(a > b){
        for(int i = b; i <= a; i++){
            answer += i;
        }
    }
    else if(a < b){
        for(int i = a; i <= b; i++){
            answer += i;
        }
    }
    else answer = a;
    
    return answer;
}

나의 풀이

def solution(a, b):
    if a < b:
        answer = sum(list(range(a, b+1)))
    else:
        answer = sum(list(range(b, a+1)))
    return answer

반복문 없이 코드를 작성하여 C++로 풀었을 때 보다 많이 간단해졌다.

다른 사람의 풀이

def solution(a, b):
    if a > b:
        a, b = b, a
    answer = sum(range(a, b+1))
    
    return answer

입출력 예시에서 a와 b의 대소관계가 바뀌어 있을 때 틀리는 경우가 생겨 a와 b를 한 번에 바꾸고 싶었는데, 방법을 몰라 나의 처음 풀이처럼 풀었다.
파이썬에서는 임시 변수를 생성하지 않고 두 변수의 값을 바꿀 수 있다는 사실은 알았지만 아직 사용에 익숙하지 않아서 필요할 때 바로바로 나오지 않는 것 같다.

profile
공부중입니다

0개의 댓글

관련 채용 정보