ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • List 예제 #2
    Algorithm/List 2021. 12. 25. 14:47
    728x90

    List 예제 #1에 이어서 baekjoon에서 다른 문제도 풀어 보았다.

     

    #2. 2605번 줄 세우기 문제

     

    문제를 보자마자 긴 문제에 어려운 건 아닌가 살짝 긴장하고 문제를 읽기 시작했다. 문제를 정리해보면 0을 뽑으면 그 자리에 그대로 있으면 되고, 다른 숫자를 뽑으면 뒤에서 부터 뽑은 숫자만큼 앞으로 가면된다고 한다. 단순히 ArrayList를 구현하고 뒤에서 부터 세어준다는 것만 염두하면 될 것 같았다.

     

     

    list.size() : list의 길이

    get(index) : 제거는 하지 않고 해당 index의 수를 뽑아옴

    add(num, index) : index에 num을 추가

     

    처음에 푼 방식은 if else 구문을 사용해서 0을 뽑으면 그 자리에 그대로 추가(add), 다른 수를 뽑으면 총 list의 길이에서 해당 숫자 만큼 빼주어 뒤에서 부터 담기게 했다. 그리고 for문과 get() 메소드를 사용하여 담긴 리스트를 다 출력해주면 끝. 

    하지만, 자꾸 보다보니 굳이 0일때를 지정할 필요가 없다... 첫 번째 학생은 무조건 0을 부여받는다고 하기 때문!!!

     

    if else 문을 다 지우고 list.size()에서 num을 빼주고 추가하는 구문만 남겼다. 이렇게 완성!!

    728x90

    'Algorithm > List' 카테고리의 다른 글

    배열과 List를 활용한 수 찾기  (0) 2021.12.31
    List 개념 및 예제#1  (0) 2021.12.25
Designed by Tistory.