본문 바로가기

Algorithm/프로그래머스

프로그래머스 level1 문제 : 두 정수 사이의 합(java)

반응형

문제 설명 : 


두 정수 a, b가 주어졌을 때 a와 b 사이에 속한 모든 정수의 합을 리턴하는 함수, solution을 완성하세요.
예를 들어 a = 3, b = 5인 경우, 3 + 4 + 5 = 12이므로 12를 리턴합니다.


제한 조건 : 

1. a와 b가 같은 경우는 둘 중 아무 수나 리턴하세요.

2. a와 b는 -10,000,000 이상 10,000,000 이하인 정수입니다.

3. a와 b의 대소관계는 정해져있지 않습니다.



해결 방법 :


1번 풀이의 경우

1. 3가지 경우(a<b, a=b, a>b)일 경우를 따로해 for문으로 +1씩 더한다.

2. 도출한 결과가 정답!

public long solution(int a, int b) {
long answer = 0;

if( a < b) {
for(int i=a; i<=b; i++) {
answer += i;
}
} else if( a == b ) {
answer = a;
return answer;
} else {
for(int i=b; i<=a; i++) {
answer += i;
}
}

return answer;
}


2번 풀이의 경우

1. Math함수를 이용해 min값과 max값을 구하는 식을 for문으로 나타낸다.

2. 도출한 결과가 끝!

public long solution(int a, int b) {
long answer = 0;

for(int i=Math.min(a, b); i <= Math.max(a, b); i++) {
answer += i;
}

return answer;
}


입니다.


이번 문제는 상당히 쉬웠네요.. 1분만에 풀었습니다. 고생하세요!


반응형