'프로그래밍/알고리즘'에 해당되는 글 4건

  1. 2011.12.13 Dijkstra 다익스트라 ( V + E ) log E
  2. 2011.09.19 An old Stone Game.
  3. 2011.04.01 2009 KOI 중등부 2번.
  4. 2011.03.17 Rebuilding Roads. 2

힙을 이용하면 다익스트라의 시간복잡도를 O(N^2) 이 아니라 O( (V+E)logE )에 구현이 가능하다.

C++ STL  priority queue 를 이용해서 구현한 Dijkstra algorithm.

 

'프로그래밍 > 알고리즘' 카테고리의 다른 글

An old Stone Game.  (0) 2011.09.19
2009 KOI 중등부 2번.  (0) 2011.04.01
Rebuilding Roads.  (2) 2011.03.17
Posted by LucidasH
http://poj.org/problem?id=1738

'프로그래밍 > 알고리즘' 카테고리의 다른 글

Dijkstra 다익스트라 ( V + E ) log E  (0) 2011.12.13
2009 KOI 중등부 2번.  (0) 2011.04.01
Rebuilding Roads.  (2) 2011.03.17
Posted by LucidasH


오른쪽 끝에서 부터 1 , 2, ... 이라고 번호를 매겼을 때 ,


C[i,j] 는 위는 1~i ,  아래는 1~j 까지 고려했을 때 가능한 경우의 수.


c[i,j] 는  만약   i,j 스위치가 연결 되어있다면

c[i,j] = c[i-1,j-1] * 2;


연결 안되어있다면,

c[i,j] = c[i-1,j] + c[i,j-1] - c[i-1,j-1];  ( 빼 주는 부분은 중복 되어 계산 되기 때문에 한 번 배주는 것. 포함배제의 원리 )


를 완성하면  이제 c[n,n] 부터  backtrace 를 하면서  답을 유추해야 한다.


연결이 되지 않은 경우는 bit 가 1이 될 수 없으므로  j를 하나 감소

만약 연결이 되어있다면,  c[i-1,j-1] 을 살펴봐서 갯수를 카운팅 해서 , 결정해나간다.

( 경우의 수를 구한 뒤 그것을 통해 index 를 찾아다는 보편적인 DP 의  방법을 사용하면 된다 )

'프로그래밍 > 알고리즘' 카테고리의 다른 글

Dijkstra 다익스트라 ( V + E ) log E  (0) 2011.12.13
An old Stone Game.  (0) 2011.09.19
Rebuilding Roads.  (2) 2011.03.17
Posted by LucidasH

http://poj.org/problem?id=1947

문제


'프로그래밍 > 알고리즘' 카테고리의 다른 글

Dijkstra 다익스트라 ( V + E ) log E  (0) 2011.12.13
An old Stone Game.  (0) 2011.09.19
2009 KOI 중등부 2번.  (0) 2011.04.01
Posted by LucidasH
이전버튼 1 이전버튼

블로그 이미지
LucidasH

공지사항

Yesterday
Today
Total

달력

 « |  » 2024.5
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31

최근에 올라온 글

최근에 달린 댓글

글 보관함