Notice
Recent Posts
Recent Comments
Link
-
floyd warshall :: 백준 :: 역사 :: 1613 본문
[문제 풀이]
첫 줄에 있는 사건의 개수 n과 전후관계 개수 k을 입력받는다.
map[n][n] 배열을 생성한 후
전후관계 k개(row, col 형태)를 입력받는데
map[row][col] = -1
map[col][row] = 1
이렇게 설정한다.
예제로 입력된 정보를 토대로 맵을 생성해보면
| -1 | -1 |
|
|
1 |
| -1 | -1 |
|
1 | 1 |
| -1 |
|
| 1 | 1 |
|
|
|
|
|
|
|
이런 형태의 맵이 나오게 된다.
이 상태에서 플로이드 와샬 알고리즘을 사용하여 완전탐색을 하면 된다.
if(map[row][k] != 0 && map[row][k] == map[l][col]){
map[row][col] = map[row][k];
}
0 | -1 | -1 | -1 | 0 |
1 | 0 | -1 | -1 | 0 |
1 | 1 | 0 | -1 | 0 |
1 | 1 | 1 | 0 | 0 |
0 | 0 | 0 | 0 | 0 |
탐색결과 위와 같은 형태로 map이 갱신되고
알고싶은 위치를 읽어서 출력하면 된다.
'알고리즘 > 탐색' 카테고리의 다른 글
BFS :: 백준 :: 불 :: 5427 - 작성중.. (0) | 2016.12.13 |
---|---|
BFS :: 백준 :: 배열에서 이동 :: 1981 (0) | 2016.11.28 |
탐색 :: 백준 :: 문자판 :: 2186 (0) | 2016.11.07 |
floyd warshall :: 백준 :: 케빈 베이컨의 6단계 법칙 :: 1389 (0) | 2016.11.03 |
floyd warshall :: 백준 :: 경로 찾기 :: 11403 (0) | 2016.11.03 |
Comments