https://github.com/pulunick/programmers-and-baekjun/blob/main/Quiz12912.java
1. 문제풀이
static class Solution6 {
public long solution6(int a, int b) {
long answer = 0;
if(a > b) {
for(long i=b; i <= a; i++) {
answer += i;
}
}else {
for(long i=a; i <= b; i++) {
answer += i;
}
}
return answer;
}
}
static class Solution7 {
public long solution7(int a, int b) {
// for문 안에 삼항연산자 가능
long answer = 0;
for (int i = ((a < b) ? a : b); i <= ((a < b) ? b : a); i++)
answer += i;
return answer;
}
}
static class Solution8 {
public long solution8(int a, int b) {
// 가장 작은 수 Math.min(변수, 변수) 가장 큰 수 Math.max
return sumAtoB(Math.min(a, b), Math.max(b, a));
}
// a는 가장 작은 수 b는 가장 큰 수
private long sumAtoB(long a, long b) {
//등차수열의 합 공식
return (b - a + 1) * (a + b) / 2;
}
}
}
2. 미흡한 점 + 새로운 풀이
- 먼저 나의 경우 a가 b보다 클경우 for문 하나 b가 a보다 클 경우 for문 하나를 넣어 문제를 풀었다.
- 위 풀이를 삼항연산자를 통해 더 단축 시킨것이 solution7
- solution8은 Math.max/min을 이용하여 가장 큰 수와 가장 작은 수를 구했고,
- 인자값을 함수에 매개변수로 보냈다 long a = 작은수 long b= 큰 수
- 등차수열의 합 공식으로 깔끔한 풀이를 만들어냈다.
'개발자 > 프로그래머스' 카테고리의 다른 글
[SQL]프로그래머스_강원도에 위치한 생산공장 목록 출력하기// SUBSTR함수 (0) | 2022.12.13 |
---|---|
[SQL] 프로그래머스 상위 n개 레코드 / rownum 활용 (0) | 2022.12.13 |
자바_프로그래머스_정수 내림차순으로 배치하기 (0) | 2022.11.23 |
자바_프로그래머스_하샤드 수 (0) | 2022.11.23 |
자바_프로그래머스_문자열 내의 p와y의개수 (0) | 2022.11.22 |