Click here to load reader
Upload
hcpc-
View
489
Download
0
Embed Size (px)
Citation preview
PowerPoint
B4 12016/05/30 HCPC
:
: 2
:
: 3
4150243
: : : : : : : : : : 5
: : : : : : : : : : 6
: :
:
:
:
VE710231135713402
Q. 8
Q. A. 9
10012345000100010010112110010300001140111015010110
150243:
110123450INFINF3INFINFINF1INFINF2INF68232INFINF4INF3INFINFINFINF574INF645INF95INF8INF79INF
15024332468579: INF: ()
(C)12
131502432
2
4
5
0
1
4
4
5
1
2
3
5
1
3
4
: 012345
141502433,2
2,2
6,4
8,5
3,0
2,1
4,4
5,4
7,5
6,1
4,2
5,3
8,1
7,3
9,4
324685799,5
: (, )012345
(C)15
(C)16
(C++)17
C++
vs 18(: )
vs 19(: )
:
: 20
s
g
g 21
21
22
22
Sample Input
10 12 90 210 90 210 120 30 90 120 120 150 210 18023
23
Sample Input
10 12 90 210 90 210 120 30 90 120 120 150 210 180
24120309021090120150180120210
21090 ()
24
= min ( + 210 , + 180 )
25... .:180210::. .. ...
25
= min ( + 210 , + 180 )
u= min ( u + u )26... .:180210::. .. ...
26
(Bellman-Ford algorithm)
27
(Bellman-Ford algorithm)
28
(Bellman-Ford algorithm)
29
0INFINFINFINFINFINFINFINFINF
3021090120309021090120150180120210
0INFINFINFINFINFINFINFINFINF
3112030902109012015018012021002101209021090
090210INFINF120INFINFINFINF
32120309021090120150180120210021012090
21090
090210INFINF120INFINFINFINF
331203090210901201501801202109018021090
090210300INF120INFINFINFINF
34120309021090120150180120210210240420300
21090
090210300510120420INFINF510
35120309021090120150180120210300
42051051021090
090210300510120420INFINF510
3612030902109012015018012021051021090
090150300510120210INFINF510
37120309021090120150180120210120210150
21090
090150300510120210330INF510
38120309021090120150180120210210330
21090
090150300510120210330480510
39120309021090120150180120210330
48021090
090150300510120210330480510
4012030902109012015018012021051021090
090150300510120210330480510
4112030902109012015018012021051021090
090150300510120210330480510
4212030902109012015018012021021090
090150300510120210330480510
4312030902109012015018012021021090
2090150300510120210330480510
44120309021090120150180120210021090
2090150300510120210330480510
451203090210901201501801202109021090
090150240510120210330480510
46120309021090120150180120210150
240 2!!21090
090150240510120210330480510
47120309021090120150180120210150
1210240 2!!21090
21090090150240510120210330480510
48120309021090120150180120210150
1210240 2!!
491:
501: O(E)
511: O(E)
1: O(E)
11V O(VE) 52
53
5412030902109012015018012021021030021090
(Dijkstras algorithm)
0INFINFINFINFINFINFINFINFINF
0
55120309021090120150180120210 ()21090
0INFINFINFINFINFINFINFINFINF
560210120901203090210901201501801202100
()21090
57021012090120309021090120150180120210
90120210
090210INFINF120INFINFINFINF
()
21090
120210
5890
(180)120309021090120150180120210 ()090210INFINF120INFINFINFINF
90
21090
58
120210
5990120309021090120150180120210 ()090210INFINF120INFINFINFINF
21090(180)
59
210
60120150240!!120309021090120150180120210
()090210INFINF120INFINFINFINF
120
21090
(240)
60
150210210
61120
!!
150210120309021090120150180120210 ()090150INFINF120210INFINFINF
21090(240)
61
210210240
62150
120309021090120150180120210240 ()090150240INF120210INFINFINF
150
21090
62
210240
63210120309021090120150180120210 ()090150240INF120210INFINFINF
210
210902
63
240330
64210120309021090120150180120210330 ()090150240INF120210330INFINF
210
21090
64
330450450
65240
120309021090120150180120210450450 ()090150240450120210330INF450
240
21090
65
450450480
66330120309021090120150180120210480 ()090150240450120210330480450
330
21090
66
450480
67450120309021090120150180120210 ()090150240450120210330480450
450
21090
67
480
68450120309021090120150180120210 ()090150240450120210330480450
450
21090
68
69480120309021090120150180120210 ()090150240450120210330480450
480
21090
69
090150240450120210330480450
70120309021090120150180120210 ()21090
70
71
: O(E)
72
: O(E)
sort73
(Priority Queue)74
75A: Push(A)
(Priority Queue)
76A:
(Priority Queue)
77A: B: Push(B)
(Priority Queue)
78A: B:
(Priority Queue)
79B: A: Pop()
(Priority Queue)
80C: B: Push(C)
(Priority Queue)
81C: B:
(Priority Queue)
82B: C: Pop()
(Priority Queue)
First In, First Out 83B: C: Pop() (Priority Queue)
Q. 84
Q. A. 85C++#include priority_queue pq;pq.push(x);O(log n) pq.top();O(1) pq.pop();O(log n) pq.empty();O(1)
(n: pq)
: ( 2 ) O(E)
86
: ( 2 ) O(E)
O(log E)
O(E log E) 87
C++
88
C++
java89
90
vs
: O(VE) : O(E log E)
91
vs
: O(VE) : O(E log E)
92
001INF2INF3INF
00
9310 ()0123
301005020
001302103INF
210130
9410 ()0123
30100502000
03010
001302103INF
130
9510 ()0123
301005020210
2pop10
00130220350
220350
9610 ()0123
301005020130
2302050
350
9710 ()0123
301005020220
00130220350
2pop20
250
9810 ()0123
301005020350
00130250350
(ry5050
9910 ()0123
301005020250
00130250350
50
vs
100
vs
V101
vs
V102
2
103 (WarshallFloyd algorithm)dp
2
104 (WarshallFloyd algorithm)dp
105dp9021012090210903090210120210210120309012090120120150180150210180
(INF)
() 0
106dp09021012090021009030900210120210210012030090120900120120015018015002101800
(INF)
107
(INF)dp09021012090021009030900210120210210012030090120900120120015018015002101800
for(int k = 0; k < V; k++) for(int i = 0; i < V; i++) for(int j = 0; j < V; j++) dp[i][j] = min(dp[i][j], dp[i][k] + dp[k][j]);
108
.dp09015024045012021033048045090024033054021030042057054015024009030030120240390300240330900210120120240390300450540300210033033045060042012021030120330090210360330210300120120330900120270300330420240240450210120015018048057039039060036027015003004505403002104203303001803300
109
for(int k = 0; k < V; k++) for(int i = 0; i < V; i++) for(int j = 0; j < V; j++) if(dp[i][k] != INF && dp[k][j] != INF) dp[i][j] = min(dp[i][j], dp[i][k] + dp[k][j]);
if
110
Dijkstra111
Dijkstra1123for
Dijkstra1133for3
:
: 114
115
: 2
:
: (OK)
: 2
:
: (OK)116
: 2
:
: (OK)117
1
118
1
119
XXX
1
120
XXX
1
121
XXX: 4
(Spanning Tree) (or ) 12210231021371023101371023102710232137
(1)(2)(3): 22: 19: 30
(Spanning Tree) (or ) 12310231021371023101371023102710232137
(1)(2)(3): 22: 19: 30()
(Spanning Tree) (or ) 12410231021371023101371023102710232137
(1)(2)(3): 22: 19: 30
()
125
125
126
126
Sample Input
10 12 110 175 135 260 160 45 125 130 180 135 240 170127
127
Sample Input
10 12 110 175 135 260 160 45 125 130 180 135 240 17012816045135260125180135170130240
175110
128
:
(& )
129 (Prims MST algorithm)BACD2976143
:
(& )
130 (Prims MST algorithm)BD
761AC2943
160451351251801351701302401751100INFINFINFINFINFINFINFINFINF
0
131 (Priority Q)2600
16045135125180135170130240175110USEDINFINFINFINFINFINFINFINFINF
1320
POP (Priority Q)2600
16045135125180135170130240175110USED110175INFINF110INFINFINFINF
110160175
133175160110
(Priority Q)2600
16045135125180135170130240175110USEDUSED175INFINF110INFINFINFINF
160175
134
110
(110)POP110 (Priority Q)260110
16045135125180135170130240175110USEDUSED175INFINF110INFINFINFINF
160175
135(110) (Priority Q)260110
16045135125180135170130240175110USEDUSED45INFINFUSED125INFINFINF
45125175
136
160
45125!!(160)
(Priority Q)260270
16045135125180135170130240175110USEDUSEDUSED135INFUSED125INFINFINF
125135175
137
45
(Priority Q)135260315
16045135125180135170130240175110USEDUSEDUSED130INFUSEDUSED180INFINF
130135175180
138
125
(Priority Q)130
440180260
16045135125180135170130240175110USEDUSEDUSEDUSED260USEDUSED180INF240
135175180240260
139
130
(Priority Q)260
240260570
16045135125180135170130240175110USEDUSEDUSEDUSED260USEDUSED180INF240
175180240260
140
135
(Priority Q)260570
16045135125180135170130240175110USEDUSEDUSEDUSED260USEDUSED180INF240
180240260
141
175
(Priority Q)260570
16045135125180135170130240175110USEDUSEDUSEDUSED260USEDUSEDUSED135170
135170240260
142
180
(Priority Q)
170135260750
16045135125180135170130240175110USEDUSEDUSEDUSED260USEDUSEDUSEDUSED170
170240260
143
135
(Priority Q)260885
16045135125180135170130240175110USEDUSEDUSEDUSED260USEDUSEDUSEDUSEDUSED
240260
144
170
(Priority Q)2601055
16045135125180135170130240175110USEDUSEDUSEDUSED260USEDUSEDUSEDUSEDUSED
260
145
240
(Priority Q)2601055
16045135125180135170130240175110USEDUSEDUSEDUSEDUSEDUSEDUSEDUSEDUSEDUSED
146
260
(Priority Q)2601315
16045135125180135170130240175110USEDUSEDUSEDUSEDUSEDUSEDUSEDUSEDUSEDUSED
147 (Priority Q) or2601315
U X X UX e
: e T
T e X UX e e T e e e e e e OK148
U X X UX e
: e T
T e X UX e e T e e e e e e OK
149
ee
U X X UX e
: e T
T e X UX e e T e e e e e e OK150
T
U X X UX e
: e T
T e X UX e e T e e e e e e OK151
T + eee
U X X UX e
: e T
T e X UX e e T e e e e e e OK152
T e + ee
+
USED
O(E log E) 153
154
:
()155 (Kruskals algorithm)
16045135125180135170130240175110156 ()45110125130135135160170175180240260
2600
160135125180135170130240175110157 ()45110125130135135160170175180240260
4526045
16045135125180135170130240175110158 ()45110125130135135160170175180240260
260155
16045135125180135170130240175110159 ()45110125130135135160170175180240260
260280
16045135125180135170130240175110160 ()45110125130135135160170175180240260
260410
16045135125180135170130240175110161 ()45110125130135135160170175180240260
NG260410
16045135125180135170130240175110162 ()45110125130135135160170175180240260
260545
16045135125180135170130240175110163 ()45110125130135135160170175180240260
260 OK705
16045135125180135170130240175110164 ()45110125130135135160170175180240260
260875
16045135125180135170130240175110165 ()45110125130135135160170175180240260
260875
16045135125180135170130240175110166 ()45110125130135135160170175180240260
2601055
16045135125180135170130240175110167 ()45110125130135135160170175180240260
2601055
26016045135125180135170130240175110168 ()45110125130135135160170175180240260
1315
26016045135125180135170130240175110169 ()45110125130135135160170175180240260
or1315
: O(E log E)
170
: O(E log E)
: O(E)
171
: O(E log E)
: O(E)
172
173
Q. A.
Union-Find Tree(disjoint-set forest)
Union-Find Tree174
643
125643125
175Union-Find Tree4312
176Union-Find TreeQ. 121212
43
177Union-Find TreeQ. 134312213
178Union-Find TreeQ. 234213A.
179Union-Find TreeQ. 344213A.
180Union-Find Tree351264
O(n)
181Union-Find Tree(n: )351264
O(n)
182Union-Find Tree351264(n: )
1: 183Union-Find Tree231245621
3125462
2:
()184Union-Find Tree23124
1243
2 O((n))
185Union-Find Tree(n: )
186Union-Find Tree(n: )
187Union-Find Tree(n: )
: O(E log E)
: O(E)
188
: O(E log E)
: O(E)
O(1)
O(E log E) + O(E) = O(E log E) 189
190
191
vs OKUnion-Find Tree192
vs OKUnion-Find Tree
: O(E)
: 193
http://judge.u-aizu.ac.jp/onlinejudge/description.jsp?id=0189http://qupc2014.contest.atcoder.jp/tasks/qupc2014_d
http://judge.u-aizu.ac.jp/onlinejudge/description.jsp?id=0180http://judge.u-aizu.ac.jp/onlinejudge/description.jsp?id=0072194