๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

์ „์ฒด ๊ธ€214

M:N Relationship Many to many relationship M:N ๊ด€๊ณ„ โœ” Many-to-many relationships โœ” ํ•œ ํ…Œ์ด๋ธ”์˜ 0๊ฐœ ์ด์ƒ์˜ ๋ ˆ์ฝ”๋“œ๊ฐ€ ๋‹ค๋ฅธ ํ…Œ์ด๋ธ”์˜ 0๊ฐœ ์ด์ƒ์˜ ๋ ˆ์ฝ”๋“œ์™€ ๊ด€๋ จ๋œ ๊ฒฝ์šฐ โœ” ์–‘์ชฝ ๋ชจ๋‘์—์„œ N:1 ๊ด€๊ณ„๋ฅผ ๊ฐ€์ง„๋‹ค. ๊ฐœ์š” โœ” ๋ณ‘์›์— ๋‚ด์›ํ•˜๋Š” ํ™˜์ž์™€ ์˜์‚ฌ์˜ ์˜ˆ์•ฝ ์‹œ์Šคํ…œ ๊ตฌ์ถ• โœ” ํ™˜์ž ์˜์‚ฌ ๊ด€๊ณ„ ๋ฐ์ดํ„ฐ ๋ชจ๋ธ๋ง ์šฉ์–ด ์ •๋ฆฌ โœ” Target model ๊ด€๊ณ„ ํ•„๋“œ๋ฅผ ๊ฐ€์ง€์ง€ ์•Š์€ ๋ชจ๋ธ โœ” Source model ๊ด€๊ณ„ ํ•„๋“œ๋ฅผ ๊ฐ€์ง„ ๋ชจ๋ธ N:1 ๋ชจ๋ธ์˜ ํ•œ๊ณ„ โœ” ๋™์ผํ•œ ํ™˜์ž๊ฐ€ ๋‹ค๋ฅธ ์˜์‚ฌ์—๊ฒŒ ์˜ˆ์•ฝํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ๊ฐ์ฒด๋ฅผ ํ•˜๋‚˜ ๋” ๋งŒ๋“ค์–ด์„œ ์˜ˆ์•ฝ์„ ์ง„ํ–‰ํ•ด์•ผ ํ•œ๋‹ค. โœ” ์™ธ๋ž˜ ํ‚ค ์ปฌ๋Ÿผ์— '1, 2' ํ˜•ํƒœ๋กœ ์ฐธ์กฐํ•˜๊ธฐ ๋ถˆ๊ฐ€๋Šฅ ์ค‘๊ฐœ ๋ชจ๋ธ ์ž‘์„ฑ์„ ํ†ตํ•œ ํ•ด๊ฒฐ โœ” ํ™˜์ž์™€ ์˜์‚ฌ ๋‘˜๋‹ค์— ๋Œ€ํ•ด์„œ N:1 ๊ด€๊ณ„๋ฅผ ๊ฐ€์ง€๋Š” ๋ณ„๋„์˜ ์˜ˆ์•ฝ.. 2022. 10. 16.
[๋ฐฑ์ค€] 1368 ๋ฌผ๋Œ€๊ธฐ (Python/ํŒŒ์ด์ฌ) https://www.acmicpc.net/problem/1368 1368๋ฒˆ: ๋ฌผ๋Œ€๊ธฐ ์ฒซ ์ค„์—๋Š” ๋…ผ์˜ ์ˆ˜ N(1 ≤ N ≤ 300)์ด ์ฃผ์–ด์ง„๋‹ค. ๋‹ค์Œ N๊ฐœ์˜ ์ค„์—๋Š” i๋ฒˆ์งธ ๋…ผ์— ์šฐ๋ฌผ์„ ํŒ” ๋•Œ ๋“œ๋Š” ๋น„์šฉ Wi(1 ≤ Wi ≤ 100,000)๊ฐ€ ์ˆœ์„œ๋Œ€๋กœ ๋“ค์–ด์˜จ๋‹ค. ๋‹ค์Œ N๊ฐœ์˜ ์ค„์— ๋Œ€ํ•ด์„œ๋Š” ๊ฐ ์ค„์— N๊ฐœ์˜ ์ˆ˜๊ฐ€ ๋“ค์–ด www.acmicpc.net ๋…ผ ์—ฐ๊ฒฐ ๋ถ€๋ถ„์ด๋‚˜ ๋ฌธ์ œ ์ •๋ณด๋ฅผ ๋ณด๋ฉด ๋ญ”๊ฐ€ ๊ทธ๋ž˜ํ”„๋‚˜ ์ตœ์†Œ์‹ ์žฅํŠธ๋ฆฌ๋ฅผ ์‚ฌ์šฉํ•ด์•ผํ•  ๊ฒƒ ๊ฐ™์€๋ฐ '์šฐ๋ฌผ ํŒŒ๊ธฐ'๋ฅผ ์–ด๋–ป๊ฒŒ ์ฒ˜๋ฆฌํ• ์ง€๊ฐ€ ๊ด€๊ฑด์ด๋‹ค. ๊ฒฐ๋ก ์ ์œผ๋กœ ์šฐ๋ฌผ์„ ๋‚˜ํƒ€๋‚ด๋Š” ๊ฐ€์ƒ์˜ ๋…ธ๋“œ N+1๋ฒˆ ๋…ธ๋“œ๋ฅผ ๋งŒ๋“ค๊ณ  ํ•ด๋‹น ๋…ธ๋“œ์˜ ๊ฐ„์„  ๋น„์šฉ์„ ์šฐ๋ฌผ ํŒŒ๋Š” ๋น„์šฉ์œผ๋กœ ์„ค์ •ํ•ด์ฃผ๋ฉด ๋œ๋‹ค. ๋‚˜๋จธ์ง€๋Š” ์ผ๋ฐ˜์ ์ธ ์ตœ์†Œ์‹ ์žฅํŠธ๋ฆฌ ๋ฌธ์ œ๋ž‘ ๋น„์Šทํ•˜๋‹ค. ๊ฐ€์ƒ์˜ ๋…ธ๋“œ๋ฅผ ๋งŒ๋“ค์–ด์ค˜์„œ ์ž…๋ ฅ๊ฐ’์„ ์ฒ˜๋ฆฌํ•˜๋Š” ์ ‘๊ทผ์ด๋ž‘ ๋ฐœ์ƒ์ด ์ค‘์š”ํ•œ.. 2022. 10. 16.
[4์ฃผ์ฐจ] TCP: Congestion Control TCP: Congestion Control Congestion Control์˜ 3 ๋‹จ๊ณ„ Slow Start โœ” start๋Š” slowํ•˜๋‚˜ ์ฆ๊ฐ€๋Š” exponentional Additive Increase โœ” Threshold์— ๋„๋‹ฌํ•˜๋ฉด linearํ•˜๊ฒŒ ์ฆ๊ฐ€ Multiplicative Decrease โœ” PacketLoss ํƒ์ง€ ์‹œ ์ ˆ๋ฐ˜์œผ๋กœ ์ค„์—ฌ์„œ ๋‹ค์‹œ ๋Š˜๋ฆผ ์™œ ๋Š˜๋ฆด ๋• linearํ•˜๊ฒŒ ๋Š˜๋ฆฌ๋‹ค๊ฐ€ ์ค„์ผ ๋–„ ์ ˆ๋ฐ˜์œผ๋กœ ์ค„์ผ๊นŒ? โœ” ๋„คํŠธ์›Œํฌ๋Š” ๊ณต์œ ์žฌ์ด๊ธฐ ๋•Œ๋ฌธ์— ๋„คํŠธ์›Œํฌ๊ฐ€ ๋„˜์ณค์„ ๋•Œ ํฌ๊ฒŒ ์ค„์—ฌ์•ผ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ๋‹ค. MSS(Max Segment Size) โœ” ์ „์†ก์–‘์„ ๋Š˜๋ฆด ๋•Œ MSS ๋‹จ์œ„๋กœ ๋Š˜๋ ค๋‚˜๊ฐ„๋‹ค. ๊ทธ๋ฆผ์œผ๋กœ ๋ณด๋Š” Congestion Control Congestion Control์˜ ํŠน์ง• ์ „์†ก ์†๋„ โœ” ์ „์†ก ์†๋„๋Š” ๊ฒฐ๊ตญ.. 2022. 10. 15.
[๋ฐฑ์ค€] 2252 ์ค„ ์„ธ์šฐ๊ธฐ (Python/ํŒŒ์ด์ฌ) https://www.acmicpc.net/problem/2252 2252๋ฒˆ: ์ค„ ์„ธ์šฐ๊ธฐ ์ฒซ์งธ ์ค„์— N(1 ≤ N ≤ 32,000), M(1 ≤ M ≤ 100,000)์ด ์ฃผ์–ด์ง„๋‹ค. M์€ ํ‚ค๋ฅผ ๋น„๊ตํ•œ ํšŒ์ˆ˜์ด๋‹ค. ๋‹ค์Œ M๊ฐœ์˜ ์ค„์—๋Š” ํ‚ค๋ฅผ ๋น„๊ตํ•œ ๋‘ ํ•™์ƒ์˜ ๋ฒˆํ˜ธ A, B๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. ์ด๋Š” ํ•™์ƒ A๊ฐ€ ํ•™์ƒ B์˜ ์•ž์— ์„œ์•ผ ํ•œ๋‹ค๋Š” ์˜ www.acmicpc.net 1. ๊ธฐ๋ณธ์ ์ธ ์œ„์ƒ ์ •๋ ฌ ๋ฌธ์ œ์ด๋‹ค. 2. ์œ„์ƒ์ •๋ ฌ์— ๋Œ€ํ•œ ์ž์„ธํ•œ ์„ค๋ช…์€ (๋งํฌ) from collections import deque import sys, os, io, atexit input = lambda: sys.stdin.readline().rstrip('\r\n') stdout = io.BytesIO() sys.stdout.write = lamb.. 2022. 10. 15.
[4์ฃผ์ฐจ] TCP: Connection Management TCP: Connection Management 3 - way handshake (Connection Establish) โœ” ์„ธ๊ทธ๋จผํŠธ๋ฅผ ์ฃผ๊ณ  ๋ฐ›๊ธฐ ์ „์— sender์™€ receiver ๊ฐ„์˜ ์—ฐ๊ฒฐ(connect) ํ•ด์•ผ ํ•œ๋‹ค. โœ” ์„œ๋กœ์˜ seq#, buffer ์ƒํƒœ ๋“ฑ๋“ฑ... client๊ฐ€ serverํ•œํ…Œ tcp connection ์—ฐ๊ฒฐ ์š”์ฒญ์„ ๋ณด๋‚ธ๋‹ค. โœ” tcp segment๋ฅผ SYNbit = 1๋กœ ํ•ด์„œ ๋ณด๋‚ธ๋‹ค.(ํ‰์†Œ์—๋Š” 0) โœ” client์˜ ์ฒซ seq#๋ฅผ ๋ณด๋‚ธ๋‹ค. server๋Š” clientํ•œํ…Œ SYNACK๋ฅผ ๋ณด๋‚ธ๋‹ค. โœ” client๊ฐ€ ๋ณด๋‚ด์˜จ seq#+1์„ ACKnum์œผ๋กœ ํ•œ๋‹ค. โœ” server์˜ ์ฒซ seq#๋ฅผ ๋ณด๋‚ธ๋‹ค. client๋Š” SYNACK์— ๋Œ€ํ•œ ACK๋ฅผ ๋ณด๋‚ธ๋‹ค. โœ” SYNbit๋Š” ๋‹ค์‹œ 0์ด ๋œ๋‹ค... 2022. 10. 14.
[๋ฐฑ์ค€] 17471 ๊ฒŒ๋ฆฌ๋งจ๋”๋ง (Python/ํŒŒ์ด์ฌ) https://www.acmicpc.net/problem/17471 17471๋ฒˆ: ๊ฒŒ๋ฆฌ๋งจ๋”๋ง ์„ ๊ฑฐ๊ตฌ๋ฅผ [1, 4], [2, 3, 5, 6]์œผ๋กœ ๋‚˜๋ˆ„๋ฉด ๊ฐ ์„ ๊ฑฐ๊ตฌ์˜ ์ธ๊ตฌ๋Š” 9, 8์ด ๋œ๋‹ค. ์ธ๊ตฌ ์ฐจ์ด๋Š” 1์ด๊ณ , ์ด ๊ฐ’๋ณด๋‹ค ๋” ์ž‘์€ ๊ฐ’์œผ๋กœ ์„ ๊ฑฐ๊ตฌ๋ฅผ ๋‚˜๋ˆŒ ์ˆ˜๋Š” ์—†๋‹ค. www.acmicpc.net 1. ๋ถ€๋ถ„์ง‘ํ•ฉ / ์กฐํ•ฉ์„ ํ†ตํ•ด์„œ ๋‘ ์„ ๊ฑฐ๊ตฌ๋ฅผ ๊ตฌํ•œ ๋‹ค์Œ, ํ•ด๋‹น ์„ ๊ฑฐ๊ตฌ ๋‚ด์˜ ์ธ๊ตฌ์ˆ˜์™€ ๊ตฌ์—ญ์ˆ˜๋ฅผ ๊ณ„์‚ฐํ•ด์„œ ๋ชจ๋“  ๊ตฌ์—ญ์ด ํฌํ•จ๋˜์—ˆ์„ ๊ฒฝ์šฐ์—๋งŒ ์ •๋‹ต์„ ๊ฐฑ์‹ ํ•ด์ฃผ๋ฉด ๋œ๋‹ค. 2. ์กฐํ•ฉ์„ ๊ตฌํ•  ๋•Œ ์–ด์ฐจํ”ผ ์กฐํ•ฉ์— ํฌํ•จ๋˜์ง€ ๋ชปํ•œ ๊ตฌ์—ญ๋“ค์ด ๋‹ค๋ฅธ ์„ ๊ฑฐ๊ตฌ์— ํฌํ•จ๋˜๊ธฐ ๋•Œ๋ฌธ์— N//2๊นŒ์ง€๋งŒ ์กฐํ•ฉ์„ ๊ตฌํ•ด๋„ ๋œ๋‹ค. 3. ๊ทธ๋Ÿฌ๋‚˜ N๊นŒ์ง€ ๋ชจ๋“  ์กฐํ•ฉ์„ ๊ตฌํ•ด๋„ ๋ณ„ ๋ฌธ์ œ ์—†์ด ์‹œ๊ฐ„ ๋‚ด์— ํ†ต๊ณผ ๋œ๋‹ค. from collections import deque fro.. 2022. 10. 14.