''ì•—! 종강ì´ì•¼!'' [[TableOfContents]] = ì°¸ì—¬ìž ëª…ë‹¨ = || 함장 || 장용운 || 11학번 || ì¶œì„ || ||<|4> ì„ ì› || 천준현 ||<|4> 15학번 || 팀플 || || ë°•ì¸ì„œ || ì¶œì„ || || ì´ì›ì¤€ || ì¶œì„ || || 남헌 || 취침 || = 수업 = == 진행 == 1. 장소 : 6층 학회실 2. 시간 : 15ì‹œ ~ 17ì‹œ == ë‚´ìš© == '''수심 11034m. 그래프 ì •ã…‹ë²…ã…‹''' * Shortist Path(Floyd-Warshall algorithm) = 코드 = == ì˜ˆì œ1 == = ìˆ™ì œ = 1. 복습하기 2. 복습하기 3. 복습하기 ---- = ìˆ™ì œ ì œì¶œ = == 천준현 == == ë°•ì¸ì„œ == ~~어쩌다 보니 C++...~~ {{{ #include <stdio.h> #include <limits> #define LEN 10 int a[LEN][LEN],path[LEN][LEN]; int main() { int i,j,k,n,m; n=5,m=6; for(i=1;i<=5;i++) { for(j=1;j<=5;j++) if(i!=j) a[i][j]=std::numeric_limits<int>::max(),path[i][j]=i; } a[1][2]=2,a[2][1]=2; a[1][4]=1,a[4][1]=1; a[1][5]=2,a[5][1]=2; a[2][3]=4,a[3][2]=4; a[2][5]=1,a[5][2]=1; a[3][4]=3,a[4][3]=3; for(i=1;i<=5;i++) { for(j=1;j<=5;j++) { for(k=1;k<=5;k++) { if(a[j][i]!=std::numeric_limits<int>::max() && a[i][k]!=std::numeric_limits<int>::max() && a[j][k]>a[j][i]+a[i][k]) a[j][k]=a[j][i]+a[i][k],path[j][k ]=i; } } } for(i=1;i<=5;i++) { for(j=1;j<=5;j++) printf("%2d ",a[i][j]); printf("\n"); } int x,y,res; scanf("%d %d",&x,&y); printf("%d ",y); if(x==y) return 0; res=path[x][y]; while(res!=x) { printf("%d ",res); res=path[x][res]; } printf("%d ",x); return 0; } }}} == ì´ì›ì¤€ == == 남헌 == ---- ----------------------------------- [활ë™ì§€ë„/2015] [ìžë£Œêµ¬ì¡±ë°œë³´ìŒˆ]