728x90
- 변수 초기화:
- result: 최종 합계를 저장하는 변수로 초기 값은 0입니다.
- start와 end: 시작 값과 끝 값을 저장하는 변수로, 초기 값은 0입니다.
- 시작 값과 끝 값 설정:
- a와 b의 크기를 비교하여, 더 작은 값을 start로, 더 큰 값을 end로 설정합니다.
- 이를 통해 항상 작은 값부터 큰 값까지의 합을 구할 수 있습니다.
- for 루프를 통한 합산:
- start부터 end까지 모든 정수를 순회하며 result에 더합니다.
- 결과 반환:
- 최종 합계를 result에 저장하고 반환합니다.
추가 힌트:
- 삼항 연산자를 사용하면 코드를 더 간결하게 만들 수 있습니다:
int start = a < b ? a : b;
int end = a > b ? a : b;
- Math를 활용하면 삼항 연산자를 사용하지 않고 더욱 더 간결하게 만들 수 있습니다:
Math.min(a,b);
Math.max(a,b);
- 더 효율적인 방법으로 등차수열의 합 공식을 사용할 수 있습니다:
(max - min + 1) * (min + max) / 2;
정답은 더보기 클릭
더보기
1. 기본적인 문법으로 문제 풀기
class Solution {
public long solution(int a, int b) {
long result = 0; // 합계를 저장할 변수
int start = 0; // 시작 값
int end = 0; // 끝 값
// a와 b의 크기를 비교하여 start와 end 값을 설정
if (a > b) {
start = b;
end = a;
} else {
start = a;
end = b;
}
// start부터 end까지의 모든 수를 합산
for (int i = start; i <= end; i++) {
result += i;
}
return result; // 최종 합계를 반환
}
}
2. Math, 등차수열을 이용하여 문제 풀기
class Solution {
public long solution(int a, int b) {
long min = Math.min(a,b);
long max = Math.max(a,b);
return (max - min + 1) * (min + max) / 2;
}
}
728x90
'프로그래머스(Java) > Level 1' 카테고리의 다른 글
[프로그래머스] 자릿수 더하기 (1) | 2024.07.16 |
---|---|
[프로그래머스] 문자열 내 p와 y의 개수 (3) | 2024.07.16 |
[프로그래머스] 신규 아이디 추천 (0) | 2024.07.12 |
[프로그래머스] 체육복 (0) | 2024.07.12 |
[프로그래머스] 약수의 합 (0) | 2024.07.10 |