post-thumbnail

Spring ๋ฌดํ•œ์Šคํฌ๋กค ย Cursor based Pagination

๋ฌดํ•œ ์Šคํฌ๋กค์€ ์–ด๋–ป๊ฒŒ ๊ตฌํ˜„ํ•˜๋Š” ๊ฑธ๊นŒ?๋‹จ์ˆœํ•˜๊ฒŒ DB์— ์ •๋ณด๋“ค์„ ํ•œ๋ฒˆ์— ๋‹ค ๋„˜๊ธฐ๋ฉด ๋˜๋Š” ๊ฑธ๊นŒโ€ฆ?๊ฒฐ๋ก ์€ ๊ทธ๋Ÿฌ๋ฉด ์•ˆ๋œ๋‹คโ€ฆ ์ •๋ณด์˜ ์–‘์ด ๋งŽ๋‹ค๋ฉด ์ƒ๊ธธ ์ˆ˜ ์žˆ๋Š” ๋ฌธ์ œ๋“ค์ดโ€ฆ ์–ดํ›„๋ฌดํ•œ ์Šคํฌ๋กค์€ ํŽ˜์ด์ง• ๋ฐฉ๋ฒ•๊ณผ ๋‹ค๋ฅด๊ฒŒ ์‚ฌ์šฉ์ž๊ฐ€ ํŽ˜์ด์ง€๋ฅผ ๊ณ„์† ์•„๋ž˜๋กœ ์Šคํฌ๋กคํ•  ๋•Œ๋งˆ๋‹ค ์ž๋™์œผ๋กœ ์ƒˆ๋กœ์šด ์ฝ˜ํ…์ธ ๋ฅผ

2025๋…„ 4์›” 16์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
ยท
post-thumbnail

Spring Pageable, PageRequest, Page<T> ๊ฐœ๋…

Pageable, PageRequest, Page Spring ์—์„œ ๊ฐœ๋ฐœ์„ ํ•˜๋‹ค๋ณด๋ฉด ํ•œ๋ฒˆ ์ฏค ๋ณธ์ ์žˆ๋Š” ์ฝ”๋“œ? ํ•œ๋ฒˆ ์ฏค ๋ณธ์ ์žˆ๋Š” ์ฝ”๋“œ๊ฐ€ ์•„๋‹ˆ๋ผ ์ œ๋Œ€๋กœ ์•Œ๊ณ  ์“ฐ๊ธฐ์œ„ํ•ด์„œ ๊ธ€์„ ์ ์–ด๋ณธ๋‹ค.Page, Pageable, PageRequest๋Š” Spring Data JPA์˜ ํŽ˜์ด์ง•

2025๋…„ 4์›” 16์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
ยท
post-thumbnail

Spring security ์นด์นด์˜ค ๋กœ๊ทธ์ธ ์ ์šฉํ•˜๊ธฐ

Created: 2025๋…„ 1์›” 12์ผ ์˜คํ›„ 3:32์นด์นด์˜ค ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ์„ ๋ˆ„๋ฅผ ์‹œ, ์นด์นด์˜ค์—์„œ ์ง€์ •ํ•œ ์ฃผ์†Œ๋กœ ์š”์ฒญ์„ ๋ณด๋‚ธ๋‹ค์ฃผ์†Œ์—๋Š” redirect_uri+ client_id + ๋“ฑ๋“ฑ ์—ฌ๋Ÿฌ ์ •๋ณด๋“ค์ด ๋‹ด๊ฒจ ์žˆ๋‹ค!๋กœ๊ทธ์ธ ์„ฑ๊ณต ์‹œ ์นด์นด์˜ค์—์„œ ์ •๋ณด๋ฅผ ๋ฐ”๋กœ ๊ฐ€์ง€๊ณ  ์˜ค๋Š” ๊ฒƒ์ด ์•„๋‹Œ

2025๋…„ 3์›” 11์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
ยท
post-thumbnail

[์•Œ๊ณ ๋ฆฌ์ฆ˜] Brand and Bound

๋ถ„๊ธฐ ํ•œ์ •๋ฒ•(Branch and Bound)์€ ์ตœ์ ํ™” ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•œ ํƒ์ƒ‰ ์•Œ๊ณ ๋ฆฌ์ฆ˜backtrack ๊ณผ ์ฐจ์ด์ ์ตœ์ ํ•ด๋ฅผ ์ฐพ์„ ๊ฐ€๋Šฅ์„ฑ์ด ์—†์œผ๋ฉด ๋ถ„๊ธฐ๋ฅผ ํ•˜์ง€ ์•Š๋Š”๋‹ค.๋˜ํ•œ Backtracking๊ณผ ๋‹ฌ๋ฆฌ ์ตœ์ ํ™” ๋ฌธ์ œ๋ฅผ ํ‘ธ๋Š”๋ฐ๋งŒ ์‚ฌ์šฉํ•œ๋‹ค.์„ค๊ณ„์ „๋žต๋…ธ๋“œ์—์„œ ์ˆซ์ž(๊ฒฝ๊ณ„)๋ฅผ ๊ณ„์‚ฐํ•˜

2024๋…„ 12์›” 17์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
ยท
post-thumbnail

[์•Œ๊ณ ๋ฆฌ์ฆ˜] The 0-1 Knapsack Problem

๋ฐฐ๋‚ญ ๋ฌธ์ œ๋ฅผ ์ƒํƒœ๊ณต๊ฐ„ํŠธ๋ฆฌ์— ์ ์šฉํ•˜์—ฌ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•œ๋‹ค. ๋ฟŒ๋ฆฌ๋งˆ๋””์—์„œ ์™ผ์ชฝ์œผ๋กœ ๊ฐ€๋ฉด ์ฒซ๋ฒˆ์งธ ์•„์ดํ…œ์„ ๋ฐฐ๋‚ญ์— ๋„ฃ๋Š” ๊ฒฝ์šฐ์ด๊ณ ,์˜ค๋ฅธ์ชฝ์œผ๋กœ ๊ฐ€๋ฉด ์ฒซ๋ฒˆ์งธ ์•„์ดํ…œ์„ ๋ฐฐ๋‚ญ์— ๋„ฃ์ง€ ์•Š๋Š” ๊ฒฝ์šฐ์ด๋‹ค.์ƒํƒœ๊ณต๊ฐ„ํŠธ๋ฆฌ๋ฅผ ๊ตฌ์ถœํ•˜์—ฌ ๋˜์ถ”์  ๊ธฐ๋ฒ•์œผ๋กœ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•œ๋‹ค.์ตœ์ ์˜ ํ•ด๋ฅผ ์ฐพ๋Š” ๋ฌธ์ œ์ด๋ฏ€๋กœ ๊ฒ€์ƒ‰์ด

2024๋…„ 12์›” 17์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
ยท
post-thumbnail

[์•Œ๊ณ ๋ฆฌ์ฆ˜] The Hamiltonian Circuits Problem

์ฃผ์–ด์ง„ ๊ทธ๋ž˜ํ”„์—์„œ ๋ชจ๋“  ์ •์ ์„ ์ •ํ™•ํžˆ ํ•œ ๋ฒˆ์”ฉ ๋ฐฉ๋ฌธํ•˜๊ณ  ์ถœ๋ฐœ์ ์œผ๋กœ ๋Œ์•„์˜ค๋Š” ๊ฒฝ๋กœ(์ˆœํ™˜), ์ฆ‰ ํ•ด๋ฐ€ํ„ด ์ˆœํ™˜(Hamiltonian Circuit)์ด ์กด์žฌํ•˜๋Š”๊ฐ€?์ƒํƒœ ์ด์ƒ ํŠธ๋ฆฌ์—์„œ ๊ธฐ์ค€์ด ๋˜๋Š” ๋…ธ๋“œ์˜ ๋ถ€๋ชจ๋…ธ๋“œ, ์ž์‹๋…ธ๋“œ๊ฐ€ ๊ธฐ์ค€์ด ๋˜๋Š” ๋…ธ๋“œ์™€ ๊ฐ™์€์ง€ ํŒ๋‹จํ•œ๋‹ค.๋ถ€๋ชจ ๋…ธ๋“œ, ์ž์‹

2024๋…„ 12์›” 17์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
ยท
post-thumbnail

[์•Œ๊ณ ๋ฆฌ์ฆ˜] Graph Coloring

์ง€๋„์— m๊ฐ€์ง€ ์ƒ‰์„ ๊ฐ€์ง€๊ณ  ์ƒ‰์น ํ•˜๋Š” ๋ฌธ์ œ.m๊ฐœ์˜ ์ƒ‰์„ ๊ฐ€์ง€๊ณ  ์ธ์ ‘ํ•œ ์ง€์—ญ์ด ๊ฐ™์€ ์ƒ‰์ด ๋˜์ง€ ์•Š๋„๋ก ์ง€๋„์— ์ƒ‰์น ํ•ด์•ผ ํ•œ๋‹ค.์ƒํƒœ ์ด์ƒ ํŠธ๋ฆฌ์—์„œ ๊ธฐ์ค€์ด ๋˜๋Š” ๋…ธ๋“œ์˜ ๋ถ€๋ชจ๋…ธ๋“œ, ์ž์‹๋…ธ๋“œ๊ฐ€ ๊ธฐ์ค€์ด ๋˜๋Š” ๋…ธ๋“œ์™€ ๊ฐ™์€์ง€ ํŒ๋‹จํ•œ๋‹ค.์ธ์ ‘ํ•œ ๋…ธ๋“œ๋“ค๊ณผ ์ƒ‰์ด ๊ฐ™๋‹ค โ‡’ ์œ ๋งํ•˜์ง€ ์•Š๋‹ค.์ธ์ ‘ํ•œ

2024๋…„ 12์›” 17์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
ยท
post-thumbnail

[์•Œ๊ณ ๋ฆฌ์ฆ˜] Sum-of-subsets Problem

์ฃผ์–ด์ง„ ์ •์ˆ˜ ์ง‘ํ•ฉ๊ณผ ๋ชฉํ‘œ ํ•ฉ๊ณ„๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ, ์ง‘ํ•ฉ์˜ ๋ถ€๋ถ„ ์ง‘ํ•ฉ ์ค‘์—์„œ ์›์†Œ๋“ค์˜ ํ•ฉ์ด ์ฃผ์–ด์ง„ ๋ชฉํ‘œ ๊ฐ’๊ณผ ์ผ์น˜ํ•˜๋Š” ๊ฒฝ์šฐ๋ฅผ ์ฐพ๋Š” ๋ฌธ์ œ์กฐ๊ฑด - ๊ฐ€์ค‘์น˜๋ฅผ ์˜ค๋ฆ„์ฐจ์ˆœ์œผ๋กœ ์ •๋ ฌํ•œ ๊ฒฝ์šฐ, ๋…ธ๋“œ๊ฐ€ ์œ ๋งํ•˜์ง€ ์•Š์Œ์„ ํŒ๋‹จํ˜„์žฌ๊นŒ์ง€ ์„ ํƒํ•œ ๊ฐ€์ค‘์น˜์˜ ํ•ฉ (weight)weight : ํ˜„์žฌ ๋…ธ๋“œ์˜

2024๋…„ 12์›” 17์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
ยท
post-thumbnail

[์•Œ๊ณ ๋ฆฌ์ฆ˜] Backtracking

๋ชจ๋“  ๊ฒฝ์šฐ์˜ ์ˆ˜๋ฅผ ์ „๋ถ€ ๊ณ ๋ คํ•˜๋Š” ์•Œ๊ณ ๋ฆฌ์ฆ˜. ์ƒํƒœ๊ณต๊ฐ„์„ ํŠธ๋ฆฌ๋กœ ๋‚˜ํƒ€๋‚ผ ์ˆ˜ ์žˆ์„ ๋•Œ ์ ํ•ฉํ•œ ๋ฐฉ์‹์ด๋‹ค. ์–ด๋–ค ๋…ธ๋“œ์—์„œ ์œ ๋ง์„ฑ์„ ์ ๊ฒ€ํ•œ ํ›„, ์œ ๋งํ•˜์ง€ ์•Š๋‹ค๊ณ  ํŒ์ •๋˜๋ฉด ๊ทธ ๋…ธ๋“œ์˜ ๋ถ€๋ชจ๋…ธ๋“œ๋กœ ๋Œ์•„๊ฐ€์„œ(โ€backtrackโ€) ๋‹ค์Œ ํ›„์†๋…ธ๋“œ์— ๋Œ€ํ•œ ๊ฒ€์ƒ‰์„ ๊ณ„์† ์ง„ํ–‰ํ•˜๋Š” ๊ณผ์ •์ด๋‹ค. P

2024๋…„ 12์›” 17์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
ยท
post-thumbnail

[์•Œ๊ณ ๋ฆฌ์ฆ˜] Dijkstraโ€™s Algorithm

๊ฐ€์ค‘์น˜๊ฐ€ ์žˆ๋Š” ๋ฐฉํ–ฅ์„ฑ ๊ทธ๋ž˜ํ”„์—์„œ ํ•œ ํŠน์ • ์ •์ ์—์„œ ๋‹ค๋ฅธ ๋ชจ๋“  ์ •์ ์œผ๋กœ ๊ฐ€๋Š” ์ตœ๋‹จ๊ฒฝ๋กœ ๊ตฌํ•˜๋Š” ๋ฌธ์ œtounchi = ํ˜„์žฌ๊นŒ์ง€์˜ ์ตœ๋‹จ ๊ฒฝ๋กœ์—์„œ, v1์—์„œ vi๋กœ ๊ฐ€๋Š” ๊ฒฝ๋กœ์˜ ๋งˆ์ง€๋ง‰์— ์œ„์น˜ํ•œ Y์— ์†ํ•œ ์ •์ ์˜ ์ธ๋ฑ์Šคlengthi = v1์—์„œ vi๋กœ ๊ฐ€๋Š” ํ˜„์žฌ ์ตœ๋‹จ ๊ฒฝ๋กœ์˜ ๊ธธ์ด

2024๋…„ 12์›” 17์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
ยท
post-thumbnail

[์•Œ๊ณ ๋ฆฌ์ฆ˜] Minimum Spanning Tree

์šฉ์–ด ์ •๋ฆฌ๋น„๋ฐฉํ–ฅ์„ฑ ๊ทธ๋ž˜ํ”„ ( undirected graph )G = (V,E) โ†’ V ๋Š” Set of Vertex โ†’ E ๋Š” Set of Edge ๊ฒฝ๋กœ path์—ฐ๊ฒฐ๋œ ๊ทธ๋ž˜ํ”„ ( connected graph ) - ์–ด๋–ค ๋‘ ์ •์  ์‚ฌ์ด์—๋„ ๊ฒฝ๋กœ๊ฐ€ ์กด์žฌ๋ถ€๋ถ„ ๊ทธ๋ž˜ํ”„ (

2024๋…„ 12์›” 17์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
ยท

[์•Œ๊ณ ๋ฆฌ์ฆ˜] Greedy algorithm

ํƒ์š•์ ์ธ ์•Œ๊ณ ๋ฆฌ์ฆ˜์€ ๊ฒฐ์ •์„ ํ•ด์•ผ ํ•  ๋•Œ๋งˆ๋‹ค ๊ทธ ์ˆœ๊ฐ„์— ๊ฐ€์žฅ ์ข‹๋‹ค๊ณ  ์ƒ๊ฐ๋˜๋Š” ๊ฒƒ์„ ํ•ด๋‹ต์œผ๋กœ ์„ ํƒํ•จ ์œผ๋กœ์จ ์ตœ์ข…์ ์ธ ํ•ด๋‹ต์— ๋„๋‹ฌํ•œ๋‹ค.โ—๏ธ ํ•˜์ง€๋งŒ, ๊ทธ ์ˆœ๊ฐ„์˜ ์„ ํƒ์ด ๊ทธ ๋‹น์‹œ( local )์—๋Š” ์ตœ์ ์ด๋‹ค. ์ตœ์„ ์ด๋ผ๊ณ  ์ƒ๊ฐํ–ˆ๋˜ ๋‹ต๋“ค์„ ๋ชจ์•„์„œ ์ตœ์ข…์ ์ธ ( gobal) ํ•ด๋‹ต์„ ๋งŒ

2024๋…„ 12์›” 17์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
ยท
post-thumbnail

[์•Œ๊ณ ๋ฆฌ์ฆ˜] Optimal Binary Search Trees

์ด์ง„ ํŠธ๋ฆฌ์—์„œ ๋นˆ๋„์ˆ˜์™€ ๊ฒ€์ƒ‰ ๋น„์šฉ์„ ์ด์šฉํ•ด์„œ, ์–ด๋–ป๊ฒŒ ๋ฐฐ์น˜ํ•˜๋ฉด ๊ฒ€์ƒ‰ ๋น„์šฉ์„ ์ค„์ผ ์ˆ˜ ์žˆ์„์ง€์— ๋Œ€ํ•ด์„œ ํƒ์ƒ‰์˜ˆ์‹œ๋ฅผ ๋ณด๋ฉด 5๋ฒˆ ์ด์ง„ ํŠธ๋ฆฌ๊ฐ€ ๊ฐ€์žฅ ํƒ์ƒ‰ ๋น„์šฉ์ด ์ ์€ ๊ฒƒ์„ ์•Œ ์ˆ˜ ์žˆ๋‹ค.$$Ai = \\min{i \\leq k \\leq j} \\left( Ai + Ak+1 +

2024๋…„ 12์›” 17์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
ยท
post-thumbnail

[์•Œ๊ณ ๋ฆฌ์ฆ˜] Chained Matrix Multiplication

์—ฐ์‡„ ํ–‰๋ ฌ ๊ณฑ์…ˆํ–‰๋ ฌ ๊ณฑ์…ˆ์˜ ํŠน์„ฑํ–‰๋ ฌ์˜ ๊ณฑ์…‰์„ ํ• ๋•Œ์˜ ์˜ˆ๋ฅผ ๋“ค์–ด๋ณด์ž A X B ์ผ ๋•ŒA์˜ ์—ด๊ณผ B์˜ ํ–‰์˜ ์ˆ˜๋Š” ๊ฐ™์•„์•ผํ•œ๋‹ค.$$Mi = \\min{i \\leq k \\leq j-1} \\left( Mi + Mk+1 + d{i-1} d_k d_j \\right)$$๊ณ„์‚ฐ์„

2024๋…„ 12์›” 17์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
ยท
post-thumbnail

[์ปดํ“จํ„ฐ๊ตฌ์กฐ]Language of the Machine

Conditional instructions are known as branchesUnconditional changes in the control flow are called jumpsThe target of the branch/jump is a label์กฐ๊ฑด์— ๋”ฐ๋ฅธ

2024๋…„ 10์›” 22์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
ยท
post-thumbnail

[์ปดํ“จํ„ฐ๊ตฌ์กฐ] Control Transfer Operations

Instructions: Language of the Machine Instruction Set Architecture (ISA) > Interface between Hardware and Software > RISC-V: Operations ๋ ˆ์ง€์Šคํ„ฐ ๋ฐ์ดํ„ฐ์—

2024๋…„ 10์›” 22์ผ
ยท
1๊ฐœ์˜ ๋Œ“๊ธ€
ยท
post-thumbnail

[์ปดํ“จํ„ฐ๊ตฌ์กฐ] Components of a Computer

CPU : Control + Datapathโ“CPU? ์ปดํ“จํ„ฐ์˜ ๊ธฐ์–ต, ํ•ด์„, ์—ฐ์‚ฐ, ์ œ์–ด๋ผ๋Š” 4๋Œ€ ์ฃผ์š”๊ธฐ๋Šฅ์„ ๊ด€ํ• ํ•˜๋Š” ์žฅ์น˜๋ฅผ ๋งํ•œ๋‹คMemoryI/Os - input/output์˜ ์•ฝ์žGUPsUser-Interface DevicesStorage Devicesํฐ ๋…ธ์ด๋งŒ์ด

2024๋…„ 10์›” 22์ผ
ยท
1๊ฐœ์˜ ๋Œ“๊ธ€
ยท
post-thumbnail

GitHub

๋งˆ์ดํฌ๋กœ์†Œํ”„ํŠธ ์‚ฐํ•˜์˜ Git ํ”Œ๋žซํผ์œผ๋กœ Git์„ ํ†ตํ•ด ๊ด€๋ฆฌํ•˜๋Š” ํ”„๋กœ์ ํŠธ๋ฅผ ์˜ฌ๋ฆด ์ˆ˜ ์žˆ๋Š” ์‚ฌ์ดํŠธ๋ฅผ ๋งํ•œ๋‹ค!GitHub: Letโ€™s build from hereGit Repositiry์€ Git์œผ๋กœ ๊ด€๋ฆฌ๋˜๋Š” ์ €์žฅ์†Œ์ด๋‹ค.Repsitory๋Š” Local repository์™€ R

2024๋…„ 9์›” 9์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
ยท
post-thumbnail

[Spring ๊ณต๋ถ€์ผ์ง€] DataBase

๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค(DB)๋Š” ์—ฌ๋Ÿฌ ์‚ฌ๋žŒ์ด ๊ณต์œ ํ•˜์—ฌ ์‚ฌ์šฉํ•  ๋ชฉ์ ์œผ๋กœ ์ฒด๊ณ„ํ™”ํ•ด ํ†ตํ•ฉ, ๊ด€๋ฆฌํ•˜๋Š” โ€œ๋ฐ์ดํ„ฐ์˜ ์ง‘ํ•ฉโ€!๋ฐ์ดํ„ฐ ๋ฒ ์ด์Šค ๊ด€๋ฆฌ ์‹œ์Šคํ…œ(DBMS)์˜ ํ†ตํ•ฉ๋œ ์ •๋ณด๋“ค์„ ์ €์žฅํ•˜์—ฌ ์šด์˜ํ•  ์ˆ˜ ์žˆ๋Š” ๊ณต์šฉ ๋ฐ์ดํ„ฐ๋“ค์˜ ๋ฌถ์Œ์ด๋‹ค.๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ์†ํ•ด ์žˆ๋Š” ๋ชจ๋ธ์€ ๋‹ค์–‘ํ•˜๋‹ค.Application

2024๋…„ 8์›” 8์ผ
ยท
1๊ฐœ์˜ ๋Œ“๊ธ€
ยท

[Spring ๊ณต๋ถ€์ผ์ง€] Spring ์ปจํ…Œ์ด๋„ˆ์™€ Bean

ApplicationContext๋ฅผ Spring ์ปจํ…Œ์ด๋„ˆ๋ผ๊ณ  ํ•œ๋‹ค.Spring ์ปจํ…Œ์ด๋„ˆ๋Š” Spring์—์„œ ์ž๋ฐ” ๊ฐ์ฒด๋“ค์„ ๊ด€๋ฆฌํ•˜๋Š” ๊ณต๊ฐ„์„ ๋งํ•œ๋‹ค. ์ž๋ฐ” ๊ฐ์ฒด๋ฅผ Spring์—์„œ๋Š” Bean์ด๋ผ๊ณ  ํ•˜๊ธฐ ๋•Œ๋ฌธ์—, Spring ์ปจํ…Œ์ด๋„ˆ์—์„œ Bean์˜ ์ƒ์„ฑ๋ถ€ํ„ฐ ์†Œ๋ฉธ๊นŒ์ง€๋ฅผ ๊ด€๋ฆฌํ•˜๋Š”

2024๋…„ 8์›” 3์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
ยท