์ „์ฒด ๊ธ€

๐Ÿฅ‡์ฝ”๋”ฉํ…Œ์ŠคํŠธ:Algorithm

DFS + DP (๋ฐฑ์ค€ 1520 ๋‚ด๋ฆฌ๋ง‰๊ธธ)

https://www.acmicpc.net/problem/1520 1520๋ฒˆ: ๋‚ด๋ฆฌ๋ง‰ ๊ธธ ์ฒซ์งธ ์ค„์—๋Š” ์ง€๋„์˜ ์„ธ๋กœ์˜ ํฌ๊ธฐ M๊ณผ ๊ฐ€๋กœ์˜ ํฌ๊ธฐ N์ด ๋นˆ์นธ์„ ์‚ฌ์ด์— ๋‘๊ณ  ์ฃผ์–ด์ง„๋‹ค. ์ด์–ด ๋‹ค์Œ M๊ฐœ ์ค„์— ๊ฑธ์ณ ํ•œ ์ค„์— N๊ฐœ์”ฉ ์œ„์—์„œ๋ถ€ํ„ฐ ์ฐจ๋ก€๋กœ ๊ฐ ์ง€์ ์˜ ๋†’์ด๊ฐ€ ๋นˆ ์นธ์„ ์‚ฌ์ด์— ๋‘๊ณ  ์ฃผ์–ด์ง„๋‹ค. www.acmicpc.net ํ’€์ด๊ณผ์ • (r,c)์—์„œ ๋ชฉ์ ์ง€ (M-1,N-1)๊นŒ์ง€ ๊ฐˆ ์ˆ˜ ์žˆ๋Š” ๋ชจ๋“  ๊ฒฝ๋กœ์˜ ๊ฐฏ์ˆ˜๋Š” (r,c)์™€ ์ธ์ ‘ํ•œ (nr,nc)์—์„œ ๋ชฉ์ ์ง€ (M-1,N-1)๊นŒ์ง€ ๊ฐˆ ์ˆ˜ ์žˆ๋Š” ๊ฒฝ๋กœ ๊ฐฏ์ˆ˜์˜ ํ•ฉ์ด๋‹ค. ์œ„ ๊ณผ์ •์„ ๊ทธ๋ฆผ์œผ๋กœ ๋‚˜ํƒ€๋‚ด๋ฉด ์•„๋ž˜์™€ ๊ฐ™๋‹ค ๋ณดํ†ต์˜ bottom-up ๋ฐฉ์‹์œผ๋กœ ๊ตฌํ˜„ํ•˜๋Š” dp๊ฐ€ ์•„๋‹ˆ์—ˆ๋‹ค. ๋ฉ”๋ชจ๋ฆฌ์ œ์ด์…˜ ๋ฐฉ๋ฒ• ๋ฐฉ๋ฌธ์ฒดํฌ ๋ฐฐ์—ด(visited) ์„ ๋‘ฌ์„œ ๊ณ„์‚ฐ์ด ์™„๋ฃŒ๋œ ์ขŒํ‘œ์˜ ๊ฒฝ์šฐ ๊ณ„์‚ฐ๋œ ๊ฒฐ๊ณผ๊ฐ’์„ ๋ฆฌํ„ดํ•˜๋Š” ๋ฐฉ..

๐Ÿฅ‡์ฝ”๋”ฉํ…Œ์ŠคํŠธ:Algorithm

๊ตฌํ˜„, ๋ฐฑํŠธ๋ž˜ํ‚น (15684 ์‚ฌ๋‹ค๋ฆฌ ์กฐ์ž‘)

https://www.acmicpc.net/problem/15684 15684๋ฒˆ: ์‚ฌ๋‹ค๋ฆฌ ์กฐ์ž‘ ์‚ฌ๋‹ค๋ฆฌ ๊ฒŒ์ž„์€ N๊ฐœ์˜ ์„ธ๋กœ์„ ๊ณผ M๊ฐœ์˜ ๊ฐ€๋กœ์„ ์œผ๋กœ ์ด๋ฃจ์–ด์ ธ ์žˆ๋‹ค. ์ธ์ ‘ํ•œ ์„ธ๋กœ์„  ์‚ฌ์ด์—๋Š” ๊ฐ€๋กœ์„ ์„ ๋†“์„ ์ˆ˜ ์žˆ๋Š”๋ฐ, ๊ฐ๊ฐ์˜ ์„ธ๋กœ์„ ๋งˆ๋‹ค ๊ฐ€๋กœ์„ ์„ ๋†“์„ ์ˆ˜ ์žˆ๋Š” ์œ„์น˜์˜ ๊ฐœ์ˆ˜๋Š” H์ด๊ณ , ๋ชจ๋“  ์„ธ๋กœ์„  www.acmicpc.net ํ’€์ด๊ณผ์ • check() :i๋ฒˆ ์„ธ๋กœ์„ ์˜ ๊ฒฐ๊ณผ๊ฐ€ i๋ฒˆ์ด ๋‚˜์˜ค๋Š”์ง€ ํ™•์ธํ•˜๋Š” ํ•จ์ˆ˜ ์‚ฌ๋‹ค๋ฆฌ 0๊ฐœ ๋†“๊ณ  check()ํ•˜๊ธฐ ์‚ฌ๋‹ค๋ฆฌ 1๊ฐœ๋ฅผ ๋†“๋Š” ๋ชจ๋“  ๊ฒฝ์šฐ์— ๋Œ€ํ•ด check()ํ•˜๊ธฐ ์‚ฌ๋‹ค๋ฆฌ 2๊ฐœ๋ฅผ ๋†“๋Š” ๋ชจ๋“  ๊ฒฝ์šฐ์— ๋Œ€ํ•ด check()ํ•˜๊ธฐ ์‚ฌ๋‹ค๋ฆฌ 3๊ฐœ๋ฅผ ๋†“๋Š” ๋ชจ๋“  ๊ฒฝ์šฐ์— ๋Œ€ํ•ด check()ํ•˜๊ธฐ ๋งŒ์•ฝ ์‚ฌ๋‹ค๋ฆฌ 1๊ฐœ๋ฅผ ๋†“๋Š” ๊ณผ์ •์—์„œ check()==true๊ฐ€ ๋œ๋‹ค๋ฉด ์‚ฌ๋‹ค๋ฆฌ 2๊ฐœ, 3๊ฐœ ๋†“๋Š” ๊ณผ์ •์€ ํ•„์š”ํ•˜์ง€ ์•Š๋‹ค. ์™œ..

๐Ÿฅ‡์ฝ”๋”ฉํ…Œ์ŠคํŠธ:Algorithm

๋ฐฑํŠธ๋ž˜ํ‚น(14890 ๊ฒฝ์‚ฌ๋กœ)

https://www.acmicpc.net/problem/14890 14890๋ฒˆ: ๊ฒฝ์‚ฌ๋กœ ์ฒซ์งธ ์ค„์— N (2 ≤ N ≤ 100)๊ณผ L (1 ≤ L ≤ N)์ด ์ฃผ์–ด์ง„๋‹ค. ๋‘˜์งธ ์ค„๋ถ€ํ„ฐ N๊ฐœ์˜ ์ค„์— ์ง€๋„๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. ๊ฐ ์นธ์˜ ๋†’์ด๋Š” 10๋ณด๋‹ค ์ž‘๊ฑฐ๋‚˜ ๊ฐ™์€ ์ž์—ฐ์ˆ˜์ด๋‹ค. www.acmicpc.net ๋ชจ๋“  ํ–‰์— ๋Œ€ํ•ด์„œ ์™ผ์ชฝ์—์„œ ์˜ค๋ฅธ์ชฝ์œผ๋กœ ์ง„ํ–‰ํ•˜๋ฉฐ ์ง€๋‚˜๊ฐˆ ์ˆ˜ ์žˆ๋Š” ๊ธธ์ธ์ง€ ํ™•์ธํ•˜๋Š” ๋ฐฉ์‹์œผ๋กœ ๋ฌธ์ œ๋ฅผ ํ’€์—ˆ๋‹ค. โœ…์™ผ์ชฝ ๋ธ”๋Ÿญ๊ณผ์˜ ๋†’์ด ์ฐจ์ด(gap) ๊ณ„์‚ฐ gap == 0 : ๋‹ค์Œ ์นธ์œผ๋กœ ์žฌ๊ท€ gap == 1 : ์™ผ์ชฝ ๋ธ”๋Ÿญ์— ๊ณ„๋‹จ์„ ๋†“์„ ์ˆ˜ ์žˆ๋Š”์ง€ ํ™•์ธํ•œ ํ›„ ๋‹ค์Œ ์นธ์œผ๋กœ ์žฌ๊ท€ gap == -1 : ์ด๋ฉด ์˜ค๋ฅธ์ชฝ ๋ธ”๋Ÿญ์— ๊ณ„๋‹จ์„ ๋†“์„ ์ˆ˜ ์žˆ๋Š”์ง€ ํ™•์ธํ•œ ํ›„ ๊ณ„๋‹จ ์ดํ›„ ์นธ์œผ๋กœ ์žฌ๊ท€ โœ…๋ฐฑํŠธ๋ž˜ํ‚น ์ข…๋ฃŒ(basecase) ์กฐ๊ฑด ๊ณ„๋‹จ์„ ๋งˆ์ง€๋ง‰ ๋ธ”๋Ÿญ..

๐Ÿฅ‡์ฝ”๋”ฉํ…Œ์ŠคํŠธ:Algorithm

BFS (๋ฐฑ์ค€ 16234 ์ธ๊ตฌ์ด๋™)

https://www.acmicpc.net/problem/16234 16234๋ฒˆ: ์ธ๊ตฌ ์ด๋™ N×Nํฌ๊ธฐ์˜ ๋•…์ด ์žˆ๊ณ , ๋•…์€ 1×1๊ฐœ์˜ ์นธ์œผ๋กœ ๋‚˜๋ˆ„์–ด์ ธ ์žˆ๋‹ค. ๊ฐ๊ฐ์˜ ๋•…์—๋Š” ๋‚˜๋ผ๊ฐ€ ํ•˜๋‚˜์”ฉ ์กด์žฌํ•˜๋ฉฐ, rํ–‰ c์—ด์— ์žˆ๋Š” ๋‚˜๋ผ์—๋Š” A[r][c]๋ช…์ด ์‚ด๊ณ  ์žˆ๋‹ค. ์ธ์ ‘ํ•œ ๋‚˜๋ผ ์‚ฌ์ด์—๋Š” ๊ตญ๊ฒฝ์„ ์ด ์กด์žฌํ•œ๋‹ค. ๋ชจ www.acmicpc.net ํ’€์ด์ˆœ์„œ 0. ํ•˜๋ฃจ๋งˆ๋‹ค NxNํฌ๊ธฐ์˜ ๋•…์„ ํ™•์ธํ•˜๋ฉฐ ๊ตญ๊ฒฝ์„ ํ—ˆ๋ฌผ์—ˆ๋Š”์ง€ ํ™•์ธ while(true){ if(!solve()){ // ๊ตญ๊ฒฝ ํ—ˆ๋ฌผ ์ˆ˜ ์žˆ๋Š”์ง€ ํ™•์ธํ•˜๊ณ  ๊ตญ๊ฒฝ ํ—ˆ๋ฌผ๊ณ  ์ธ๊ตฌ์ˆ˜ ๊ฐฑ์‹  break; } ans+=1; } ํ•˜๋ฃจ๋งˆ๋‹ค (0,0)์—์„œ bfs๋ฅผ ์ˆ˜ํ–‰ํ•˜๋ฉฐ ๊ตญ๊ฒฝ์„ ํ—ˆ๋ฌผ๊ณ  ์ธ๊ตฌ๋ฅผ ์ด๋™์‹œ์ผฐ๋‹ค. static boolean solve(){ visited = new boolean[N][N];..

๐Ÿฅ‡์ฝ”๋”ฉํ…Œ์ŠคํŠธ:Algorithm

๋‘ ์ง€์ ์ด ๋™์‹œ์—, ๋ฒฝ์— ๋‹ฟ๊ธฐ ์ „ ๊นŒ์ง€ ์›€์ง์ด๋Š” bfs (๋ฐฑ์ค€ 13460 ๊ตฌ์Šฌํƒˆ์ถœ2)

ํŠน์ดํ•œ bfs๋ฌธ์ œ ํ•ต์‹ฌ ๋กœ์ง 1. ๊ตฌ์Šฌ์„ ๋™์‹œ์— ์›€์ง์ด๊ธฐ 2. ๋ฒฝ์— ๋‹ฟ๊ธฐ ์ง์ „๊นŒ์ง€ ์ตœ๋Œ€ํ•œ ์›€์ง์ด๊ธฐ 3. ๋นจ๊ฐ„ ๊ตฌ์Šฌ๊ณผ, ํŒŒ๋ž€ ๊ตฌ์Šฌ์ด ๊ฒน์น˜๋Š” ๊ฒฝ์šฐ๋ฅผ ์ฒ˜๋ฆฌ 1. ๊ตฌ์Šฌ์„ ๋™์‹œ์— ์›€์ง์ด๊ธฐ ๋นจ๊ฐ„๊ณต๊ณผ ํŒŒ๋ž€๊ณต์˜ ์ขŒํ‘œ๋ฅผ ๊ฐ™์ด ๊ฐ€์ง€๊ณ  ์žˆ๋Š” Marble ํด๋ž˜์Šค๋ฅผ ๋งŒ๋“ค์—ˆ๋‹ค. class Marble{ private int redRow,redCol,blueRow,blueCol; public Marble(){} public Marble(int redRow, int redCol, int blueRow, int blueCol){ this.redRow = redRow; this.redCol = redCol; this.blueRow = blueRow; this.blueCol = blueCol; } public int getRedRow()..

๐Ÿ–ฅ๏ธ์ปดํ“จํ„ฐ๊ณผํ•™:CS

[์šด์˜์ฒด์ œ]6์žฅ. cpu์Šค์ผ€์ค„๋ง

ํ”„๋กœ๊ทธ๋žจ ๋™์ž‘์ˆœ์„œ 1. ํ”„๋กœ๊ทธ๋žจ์ด ์‹œ์ž‘๋˜์–ด ๋ฉ”๋ชจ๋ฆฌ์— ์˜ฌ๋ผ๊ฐ 2. PC(ํ”„๋กœ๊ทธ๋žจ ์นด์šดํ„ฐ)๋ผ๋Š” ๋ ˆ์ง€์Šคํ„ฐ๊ฐ€ ํ˜„์žฌ CPU์—์„œ ์ˆ˜ํ–‰ํ•  ์ฝ”๋“œ์˜ ๋ฉ”๋ชจ๋ฆฌ ์ฃผ์†Œ๊ฐ’์„ ๊ฐ€์ง€๊ฒŒ ๋จ 3. CPU๋Š” PC๊ฐ€ ๊ฐ€๋ฆฌํ‚ค๋Š” ์ฃผ์†Œ์˜ ๊ธฐ๊ณ„์–ด ๋ช…๋ น์„ ํ•˜๋‚˜์”ฉ ์ˆ˜ํ–‰ ๊ธฐ๊ณ„์–ด ๋ช…๋ น ์ข…๋ฅ˜ cpu๋‚ด์—์„œ ์ˆ˜ํ–‰๋˜๋Š” ๋ช…๋ น (์˜ˆ : ADD๋ช…๋ น) ๋ฉ”๋ชจ๋ฆฌ ์ ‘๊ทผ์„ ํ•„์š”๋กœ ํ•˜๋Š” ๋ช…๋ น (์˜ˆ : Load๋ช…๋ น, Store๋ช…๋ น) ์ž…์ถœ๋ ฅ์„ ๋™๋ฐ˜ํ•˜๋Š” ๋ช…๋ น 1๋ฒˆ, 2๋ฒˆ์€ ๋น„๊ต์  ๋น ๋ฅธ๋ช…๋ น (์‚ฌ์šฉ์ž ํ”„๋กœ๊ทธ๋žจ์ด ์ง์ ‘ cpu๋ฅผ ๊ฐ€์ง€๊ณ  ์ˆ˜ํ–‰) ๐Ÿ‘‰ CPU๋ฒ„์ŠคํŠธ 3๋ฒˆ์€ ์ƒ๋Œ€์ ์œผ๋กœ ๋Š๋ฆฐ ๋ช…๋ น ๐Ÿ‘‰ I/O ๋ฒ„์ŠคํŠธ ํ”„๋กœ๊ทธ๋žจ๋“ค์€ CPU๋ฒ„์ŠคํŠธ๊ฐ€ ๊ธด ๊ฒฝ์šฐ๋„ ์žˆ๊ณ  ์งง์€ ๊ฒฝ์šฐ๋„ ์žˆ๊ณ , I/O๋ฒ„์ŠคํŠธ๊ฐ€ ๊ธด ๊ฒฝ์šฐ, ์งง์€ ๊ฒฝ์šฐ ์žˆ๊ณ  ๋‹ค์–‘ํ•˜๋‹ค. ๋”ฐ๋ผ์„œ CPU ์Šค์ผ€์ค„๋ง์ด ํ•„์š”ํ•จ. CPU์Šค์ผ€์ค„๋ง์˜ ๋‘ ๊ฐ€์ง€ ๋ถ„๋ฅ˜ ๋น„์„ ์ ํ˜•..

๐Ÿ“–๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค:DB

SQLD

1๊ณผ๋ชฉ ๋ฐœ์ƒ์‹œ์ ์— ๋”ฐ๋ฅธ ์—”ํ‹ฐํ‹ฐ ๋ถ„๋ฅ˜ ๊ธฐ๋ณธ/ํ‚ค์—”ํ‹ฐํ‹ฐ : ๋‹ค๋ฅธ ์—”ํ„ฐํ‹ฐ๋กœ๋ถ€ํ„ฐ ์ฃผ์‹๋ณ„์ž๋ฅผ ์ƒ์†๋ฐ›์ง€ ์•Š๊ณ  ์ž์‹ ์˜ ๊ณ ์œ ํ•œ ์ฃผ์‹๋ณ„์ž๋ฅผ ๊ฐ€์ง€๋ฉฐ ์‚ฌ์›, ๋ถ€์„œ, ๊ณ ๊ฐ, ์ƒํ’ˆ, ์ž์žฌ ๋“ฑ์ด ์˜ˆ๊ฐ€ ๋  ์ˆ˜ ์žˆ๋Š” ์—”ํ„ฐํ‹ฐ ์ค‘์‹ฌ์—”ํ‹ฐํ‹ฐ ํ–‰์œ„์—”ํ‹ฐํ‹ฐ ๋ฐ์ดํ„ฐ ๋ชจ๋ธ๋ง์ด๋ž€ ์ •๋ณด์‹œ์Šคํ…œ์„ ๊ตฌ์ถ•ํ•˜๊ธฐ ์œ„ํ•œ ๋ฐ์ดํ„ฐ ๊ด€์ ์˜ ์—…๋ฌด ๋ถ„์„ ๊ธฐ๋ฒ• ํ˜„์‹ค์„ธ๊ณ„์˜ ๋ฐ์ดํ„ฐ์— ๋Œ€ํ•ด ์•ฝ์†๋œ ํ‘œ๊ธฐ๋ฒ•์— ์˜ํ•ด ํ‘œํ˜„ํ•˜๋Š” ๊ณผ์ • ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ๊ตฌ์ถ•ํ•˜๊ธฐ ์œ„ํ•œ ๋ถ„์„/์„ค๊ณ„์˜ ๊ณผ์ • ๋ฐ์ดํ„ฐ ๋ชจ๋ธ๋ง ์œ ์˜์  ์ค‘๋ณต ๋น„์œ ์—ฐ์„ฑ : ๋ฐ์ดํ„ฐ์˜ ์ •์˜์™€ ๋ฐ์ดํ„ฐ์˜ ์‚ฌ์šฉ ํ”„๋กœ์„ธ์Šค๋ฅผ ๋ถ„๋ฆฌ ๋น„์ผ๊ด€์„ฑ ๋ฐ์ดํ„ฐ๋ชจ๋ธ๋ง์€ DB๊ตฌ์ถ•ํ•˜๊ธฐ๋งŒ์„ ์œ„ํ•œ ๊ฒƒ์ด ์•„๋‹ˆ๋ผ, ๋ชจ๋ธ๋ง ์ž์ฒด๋กœ์„œ ์—…๋ฌด๋ฅผ ์„ค๋ช…ํ•˜๊ณ  ๋ถ„์„ํ•˜๋Š”๋ฐ ์ค‘์š”ํ•œ ์˜๋ฏธ๊ฐ€ ์žˆ๋‹ค ๊ฐœ๋…์  ๋ฐ์ดํ„ฐ ๋ชจ๋ธ๋ง : ์ถ”์ƒํ™” ์ˆ˜์ค€์ด ๋†’๊ณ  ์—…๋ฌด์ค‘์‹ฌ์ ์ด๊ณ  ํฌ๊ด„์ ์ธ ์ˆ˜์ค€์˜ ๋ชจ๋ธ๋ง ์ง„ํ–‰. ์ „์‚ฌ์  ๋ฐ์ดํ„ฐ ๋ชจ๋ธ..

๐Ÿ“–๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค:DB

[MySQL] ์ตœ์ƒ์œ„ ๋ ˆ์ฝ”๋“œ ํ•˜๋‚˜ ๊ฐ€์ ธ์˜ค๊ธฐ

order by์™€ limit์„ ํ™œ์šฉ SELECT name from animal_ins order by datetime limit 1;

mc.thd
mincheolsong