나의 풀이
class Solution {
public long solution(int a, int b) {
long sum = 0;
int big=Math.max(a,b);
int min=Math.min(a,b);
for(int i=min; i<big+1; i++){
sum+=(long)i;
}
return sum;
}
}
다른 사람의 풀이
class Solution {
public long solution(int a, int b) {
return sumAtoB(Math.min(a, b), Math.max(b, a));
}
private long sumAtoB(long a, long b) {
return (b - a + 1) * (a + b) / 2;
}
}
▶ 등차수열의 공식 s=n(a+l)/2
▶ n은 항의 갯수, a는 첫번째항, l은 마지막항을 의미
▶ 코드에서 살펴보면, (b-a+1)은 항의 갯수, a는 첫번째항, b는 두번째 항을 의미
'프로그래머스(자바) > LV.1(자바)' 카테고리의 다른 글
서울에서 김서방 찾기 (0) | 2022.12.14 |
---|---|
콜라츠 추측 (0) | 2022.12.14 |
나머지가 1이 되는 수 찾기→findFirst(), orElse() (0) | 2022.12.14 |
정수 내림차순으로 배치하기 (0) | 2022.12.12 |
하샤드 수 = 숫자를 문자열로 전환 + 문자열을 숫자로 전환★ (0) | 2022.12.12 |