[프로그래머스/java/Lv.1] 두 정수 사이의 합 (+등차수열의 합)

2025. 1. 11. 11:30·코테/프로그래머스 JAVA Lv.1

 

 

 

 

* 문제 풀이

class Solution {
    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){
            for(int i = b; i <= a ; i++){
                answer += i;
            }
        } else{
            answer = a;
        }
        return answer;
    }
}

 

조건식 if 문에서 a와 b의 크기를 비교해 조건에 맞는 코드를 실행한다.

a < b의 경우, 3+4+5를 계산.

b < a의 경우, 5+4+3을 계산.

a = b의 경우, a나 b 중 아무 수나 리턴, a로 설정했으니 a 값 리턴

 

 

 

근데 이 식이 효율성이 떨어지기 때문에 개선하기 위해 등차수열의 합 공식을 사용할 수 있다고 한다.

public long solution(int a, int b) {
    long start = Math.min(a, b);
    long end = Math.max(a, b);
    return (end - start + 1) * (start + end) / 2;
}

 

등차수열의 합 공식... 그게 뭔데...

일정한 차이(공차)를 가진 연속된 숫자들의 합을 계싼하는 수학 공식이라고 한다~

S : 등차수열의 합 

n : 항의 개수(첫번쨰 항부터 마지막 항까지 포함된 항의 개수)

a : 첫번째 항

l : 마지막 항

 

 

 

* 프로그래머스 다른 풀이

https://school.programmers.co.kr/learn/courses/30/lessons/12912/solution_groups?language=java&type=all

 

프로그래머스

SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프

programmers.co.kr

 

 

 

 

 

저작자표시 비영리 변경금지 (새창열림)

'코테 > 프로그래머스 JAVA Lv.1' 카테고리의 다른 글

[프로그래머스/java/Lv.1] x만큼 간격이 있는 n개의 숫자  (0) 2024.10.15
[프로그래머스/java/Lv.1] 자릿수 더하기  (0) 2024.10.12
[프로그래머스/java/Lv.1] 평균 구하기  (0) 2024.10.01
[프로그래머스/java/Lv.1] 나머지가 1이 되는 수 찾기  (0) 2024.09.30
[프로그래머스/java/Lv.1] 문자열을 정수로 바꾸기  (0) 2024.09.29
'코테/프로그래머스 JAVA Lv.1' 카테고리의 다른 글
  • [프로그래머스/java/Lv.1] x만큼 간격이 있는 n개의 숫자
  • [프로그래머스/java/Lv.1] 자릿수 더하기
  • [프로그래머스/java/Lv.1] 평균 구하기
  • [프로그래머스/java/Lv.1] 나머지가 1이 되는 수 찾기
amying
amying
공부해보겠슨
  • amying
    꽁꽁 얼어붙은 자바 위를 자박자박
    amying
  • 글쓰기 관리
  • 전체
    오늘
    어제
    • 분류 전체보기 (332)
      • 공부 (55)
        • JAVA (17)
        • Spring (17)
        • Java Script (1)
        • React (0)
        • SQL (3)
        • DB (1)
        • CS (13)
        • 기술면접 (3)
      • Git (2)
      • 강의 (36)
        • 부스트코스: Connect On: 테크와 나를 잇.. (16)
        • 부스트코스: CS50 (20)
      • 네이버 부스트캠프 베이직 (25. 06) (0)
      • 에러 (10)
      • 코테 (205)
        • 백준 (29)
        • 프로그래머스 JAVA Lv.0 (116)
        • 프로그래머스 JAVA Lv.1 (7)
        • 프로그래머스 SQL (53)
      • 개인 프로젝트 (16)
        • 책첵 CHAEKCHECK (2)
        • 일정 관리 서비스 만들기 (0)
        • 게시판 만들기 (eclipse-JSP) (14)
      • 이것저것 (4)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    부스트코스강의
    업무자동화
    ORACLE에러
    알고리즘
    Java
    springbot
    코테
    에러
    부스트코스
    오라클에러
    책첵개발일지
    코딩테스트_입문
    git명령어
    CS50
    lombok
    데이터연동
    프로그래머스
  • 최근 댓글

  • hELLO· Designed By정상우.v4.10.4
amying
[프로그래머스/java/Lv.1] 두 정수 사이의 합 (+등차수열의 합)
상단으로

티스토리툴바