ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 10159
    알고리즘/acmicpc 2015. 2. 28. 13:54

    처음에 이 문제를 읽을때 위상정렬을 써야하나 깊이 고민했는데

    올림피아드 문제에서 대학생들이 공부하는 위상정렬을 여기서 쓰겟나 싶어서 간단히 접근한결과 무식하게 풀기를 생각해냈다.


    이차원 배열을 선언하고 다음과 같이 정의한다.

    judge[from][to] from과 to의 값을 비교 결과를 저장하는 배열이다. 

    from< to이면 -1, from > to 이면 1, 알수 없으면 0으로 저장한다.


    여기서 너무도 당연한 사실을 생각 할 수 있는데


    from < to 이면


    from과 from보다 작은 값들과, to와 to보다 높은 값들과 비교를 할 수 있다는 사실


    그래서 난 from과 from보다 작은 값들을 loser라는 벡터에 두고

    to와 to보다 높은 것들을 winner라는 벡터에 두어서

    (judge[][]함수를 찾아다녔다)


    각각 벡터 값으로 judge[][]를 재정의 해주는 방법을 택했다.


    알고리즘의 시간 복잡도는 O(N*N)으로 좋지 않지만

    문제에서 크기를 100으로 제한했기 때문에 시간내에는 충분히 풀 수 있는 문제.



    '알고리즘 > acmicpc' 카테고리의 다른 글

    4256  (0) 2015.02.28
    2156  (0) 2015.02.28
    9489  (0) 2015.02.26
    2517  (0) 2015.02.26
    2568  (0) 2015.02.25

    댓글

Designed by Tistory.