Algorithm

2/3기록 - 백준 1292

Hyeon Lee 2022. 2. 3. 09:08
728x90

오늘의 포스팅은 실버 5레벨의 백준 1292번 문제이다. 문제 제목 답게 그냥 쉽게 한 문제 풀고 싶어서 들어가 보았는데 보자마자 쉽긴했다 ㅋㅋㅋㅋ

 

 

쉽게 푸는 문제인 만큼 문제 이해는 굉장히 쉽다. 예제 입력을 통해서 이해를 해보면 1,2,2,3,3,3,4,4,4,4,5,5,5,5,5... 의 수열에서 3번째 수 2 부터 7번째 수 4까지 2+3+3+3+4 = 15를 출력하면 된다. 

나열되어 있는 형태라 일차원 배열로 생각하기 쉽지만

1

2 2

3 3 3

4 4 4 4 

와 같이 흔히 c언어 시간에 배웠던 삼각형 모양을 떠올리면 굉장히 간단해진다. 이차원 배열의 형태로 문제를 흔히 풀 수 있어 배열로 나타내고 처음엔 풀었지만, 배열 인덱스가 1000을 넘어가기 때문에 배열보다는 ArrayList를 사용하는 것이 더 효율적일 것으로 판단했다.

 

알고리즘 생각

1. A, B를 입력받는다.

2. list를 선언한다.

3. 이중 for문으로 이차원 배열 형태로 나타내어주고, list에 인덱스들을 모두 add시킨다.

4. sum 변수에 A-1부터 B-1 인덱스 까지 for문으로 반복하여 list에서 인덱스를 뽑아내고 더해준다.

5. sum 출력

 

 

이렇게 풀 수 있었다. 이중 for문의 구조는 흔히 우리가 c언어에서 배우는 기본 예제 이므로 시작점과 끝의 수만 조심해 주면 간단하게 해결할 수 있다. 

 

2/3 기록 끝!!!!!!!!

728x90