전체 κΈ€

μ•Œκ³ λ¦¬μ¦˜/BOJ

[BOJ] 1202 보석도둑 - Java

✨ μš°μ„ μˆœμœ„ 큐 & μ •λ ¬ https://www.acmicpc.net/problem/1202 1202번: 보석 도둑 첫째 쀄에 Nκ³Ό Kκ°€ 주어진닀. (1 ≤ N, K ≤ 300,000) λ‹€μŒ N개 μ€„μ—λŠ” 각 λ³΄μ„μ˜ 정보 Mi와 Viκ°€ 주어진닀. (0 ≤ Mi, Vi ≤ 1,000,000) λ‹€μŒ K개 μ€„μ—λŠ” 가방에 담을 수 μžˆλŠ” μ΅œλŒ€ 무게 Ciκ°€ 주어진닀. (1 ≤ Ci www.acmicpc.net πŸ“ κ³ λ €ν•΄μ•Όν•  점 ν›”μΉ  수 μžˆλŠ” 보석 κ°€κ²©μ˜ μ΅œλŒ€μ˜ 합을 ꡬ해야 ν•œλ‹€. λ³΄μ„μ˜ 개수

μ•Œκ³ λ¦¬μ¦˜/BOJ

[BOJ] 1238 νŒŒν‹° - Java

✨ κ·Έλž˜ν”„ πŸ‘‰ λ‹€μ΅μŠ€νŠΈλΌ (μ΅œλ‹¨κ²½λ‘œ 탐색 μ•Œκ³ λ¦¬μ¦˜) https://www.acmicpc.net/problem/1238 1238번: νŒŒν‹° 첫째 쀄에 N(1 ≤ N ≤ 1,000), M(1 ≤ M ≤ 10,000), Xκ°€ 곡백으둜 κ΅¬λΆ„λ˜μ–΄ μž…λ ₯λœλ‹€. 두 번째 쀄뢀터 M+1번째 μ€„κΉŒμ§€ i번째 λ„λ‘œμ˜ μ‹œμž‘μ , 끝점, 그리고 이 λ„λ‘œλ₯Ό μ§€λ‚˜λŠ”λ° ν•„μš”ν•œ μ†Œμš”μ‹œκ°„ Tiκ°€ λ“€μ–΄ www.acmicpc.net πŸ“ κ³ λ €ν•΄μ•Όν•  점 각 ν•™μƒλ“€μ˜ μ§‘μ—μ„œ νŒŒν‹° μž₯μ†ŒκΉŒμ§€ 였고 κ°€λŠ” 데 κ±Έλ¦¬λŠ” μ΅œλ‹¨ μ‹œκ°„ κ΅¬ν•˜κΈ° λ„λ‘œλ“€μ€ 단방ν–₯ πŸ‘‰ κΈΈλ§ˆλ‹€ κ±Έλ¦¬λŠ” μ‹œκ°„μ΄ λ‹€λ₯΄λ―€λ‘œ 였고 κ°€λŠ” κΈΈ λ˜ν•œ 닀름 ! Nλͺ…μ˜ 학생듀 쀑 였고 κ°€λŠ” 데 κ°€μž₯ λ§Žμ€ μ‹œκ°„μ„ μ†ŒλΉ„ν•œ 학생 좜λ ₯ πŸ•ΉοΈ 풀이과정 μ§‘μ—μ„œ νŒŒν‹° μž₯μ†ŒκΉŒμ§€ κ°€λŠ” 데 κ±Έλ¦¬λŠ” μ΅œλ‹¨ μ‹œκ°„ + νŒŒν‹° μž₯μ†Œμ—μ„œ..

DevOps/🐳 Docker

[🐳 Docker] 도컀 λͺ…λ Ήμ–΄ 정리 - Dockerfile

Docker μ£Όμš” λͺ…λ Ήμ–΄ 도컀 λͺ…λ Ήμ–΄ μ°Ύμ•„μ„œ μ‚¬μš©ν•˜κΈ° πŸ‘‰ https://docs.docker.com/reference/cli/docker/container/rm/ cheatsheet μ‚¬μš©ν•˜κΈ° πŸ‘‰ https://docs.docker.com/get-started/docker_cheatsheet.pdf λͺ…λ Ήμ–΄ ꡬ성 : docker μ»€λ§¨λ“œ (μ˜΅μ…˜) λŒ€μƒ (인자) docker run --name apa03 -d -p 8081:80 httpd docker --version docker ps -a : μ€‘μ§€λœ μ»¨ν…Œμ΄λ„ˆκΉŒμ§€ λͺ¨λ‘ 확인 docker pull [이미지 이름] : docker hubμ—μ„œ 이미지 λ‹€μš΄λ‘œλ“œ μ‹€ν–‰ 쀑인 μ»¨ν…Œμ΄λ„ˆ λͺ¨λ‘ μ‚­μ œ docker rm -f $(docker ps -aq) docker run = ..

μ•Œκ³ λ¦¬μ¦˜/BOJ

[BOJ] 2169 λ‘œλ΄‡ μ‘°μ’…ν•˜κΈ° - Java

✨ DP https://www.acmicpc.net/problem/2169 2169번: λ‘œλ΄‡ μ‘°μ’…ν•˜κΈ° 첫째 쀄에 N, M(1≤N, M≤1,000)이 주어진닀. λ‹€μŒ N개의 μ€„μ—λŠ” M개의 수둜 배열이 주어진닀. λ°°μ—΄μ˜ 각 μˆ˜λŠ” μ ˆλŒ“κ°’μ΄ 100을 λ„˜μ§€ μ•ŠλŠ” μ •μˆ˜μ΄λ‹€. 이 값은 κ·Έ μ§€μ—­μ˜ κ°€μΉ˜λ₯Ό λ‚˜νƒ€λ‚Έλ‹€. www.acmicpc.net πŸ“ κ³ λ €ν•΄μ•Όν•  사항 λ‘œλ΄‡μ€ 움직일 λ•Œ λ°°μ—΄μ—μ„œ μ™Όμͺ½, 였λ₯Έμͺ½, μ•„λž˜μͺ½μœΌλ‘œ 이동할 수 μžˆμ§€λ§Œ μœ„μͺ½μœΌλ‘œλŠ” 이동 X ν•œ 번 νƒμ‚¬ν•œ 지역은 μž¬νƒμ‚¬ X (1, 1)μ—μ„œ (N, M)κΉŒμ§€ 갈 λ•Œ νƒμ‚¬ν•œ μ§€μ—­λ“€μ˜ κ°€μΉ˜μ˜ μ΅œλŒ“κ°’ κ΅¬ν•˜κΈ° πŸ•ΉοΈ 풀이 방법 μš°μ„  0번째 행에 μžˆλŠ” 값듀은 μ™Όμͺ½μ—μ„œλΆ€ν„° μ΄λ™ν•˜λ©΄μ„œ 합쳐진 값을 κΈ°λ‘ν•œλ‹€. 이미 νƒμƒ‰ν•œ 길은 λ‹€μ‹œ λ°©λ¬Έν•  수 μ—†μœΌλ―€λ‘œ κ²½λ‘œκ°€ μ™Όμͺ½μœΌλ‘œλΆ€ν„° 이동..

μ•Œκ³ λ¦¬μ¦˜/CodeTree

[CodeTree] λ©”μ΄μ¦ˆ λŸ¬λ„ˆ - Java

✨ κ΅¬ν˜„ πŸ‘‰ 쑰건을 λ§Œμ‘±ν•˜λŠ” κ°€μž₯ μž‘μ€ 크기의 μ •μ‚¬κ°ν˜•μ„ μ°Ύκ³  μ‹œκ³„λ°©ν–₯으둜 90도 νšŒμ „ https://www.codetree.ai/training-field/frequent-problems/problems/maze-runner/description?page=1&pageSize=20 μ½”λ“œνŠΈλ¦¬ | μ½”λ”©ν…ŒμŠ€νŠΈ μ€€λΉ„λ₯Ό μœ„ν•œ μ•Œκ³ λ¦¬μ¦˜ 정석 κ΅­κ°€λŒ€ν‘œκ°€ λ§Œλ“  μ½”λ”© κ³΅λΆ€μ˜ κ°€μ΄λ“œλΆ μ½”λ”© μ™•μ΄ˆλ³΄λΆ€ν„° 꿈의 직μž₯ μ½”ν…Œ ν•©κ²©κΉŒμ§€, κ΅­κ°€λŒ€ν‘œκ°€ μ—„μ„ ν•œ 컀리큘럼으둜 μ€€λΉ„ν•΄λ³΄μ„Έμš”. www.codetree.ai πŸ“ κ³ λ €ν•΄μ•Όν•  점 μ°Έκ°€μžκ°€ ν˜„μž¬ μžˆλŠ” μΉΈ ~ μΆœκ΅¬κΉŒμ§€μ˜ 거리 < μ°Έκ°€μžκ°€ 이동할 μΉΈ ~ μΆœκ΅¬κΉŒμ§€μ˜ 거리 βž” 이동 X μΆœκ΅¬κΉŒμ§€μ˜ μ΅œλ‹¨κ±°λ¦¬κ°€ 더 κ°€κΉŒμ›Œμ•Ό 이동 κ°€λŠ₯ 움직일 수 μžˆλŠ” 칸이 2개 이상이라면 μƒν•˜λ‘œ μ›€μ§μ΄λŠ” 것을 μš°μ„ μ‹œ..

μ•Œκ³ λ¦¬μ¦˜/BOJ

[BOJ] 14503 λ‘œλ΄‡μ²­μ†ŒκΈ° - Java

✨ κ΅¬ν˜„ https://www.acmicpc.net/problem/14503 14503번: λ‘œλ΄‡ μ²­μ†ŒκΈ° 첫째 쀄에 방의 크기 $N$κ³Ό $M$이 μž…λ ₯λœλ‹€. $(3 \le N, M \le 50)$ λ‘˜μ§Έ 쀄에 μ²˜μŒμ— λ‘œλ΄‡ μ²­μ†ŒκΈ°κ°€ μžˆλŠ” 칸의 μ’Œν‘œ $(r, c)$와 μ²˜μŒμ— λ‘œλ΄‡ μ²­μ†ŒκΈ°κ°€ λ°”λΌλ³΄λŠ” λ°©ν–₯ $d$κ°€ μž…λ ₯λœλ‹€. $d$κ°€ $0$인 경우 뢁μͺ½ www.acmicpc.net πŸ“ κ³ λ €ν•΄μ•Όν•  점 μ£Όλ³€ λ™μ„œλ‚¨λΆ 4μΉΈ 쀑 μ²­μ†Œλ˜μ§€ μ•Šμ€ 빈 칸이 μ—†λŠ” 경우 즉, λͺ¨λ‘ μ²­μ†Œλ˜μ—ˆλ‹€λ©΄ λ°”λΌλ³΄λŠ” λ°©ν–₯을 μœ μ§€ν•˜κ³  ν•œ μΉΈ 후진 κ°€λŠ₯ν•˜λ©΄ ν›„μ§„ν•œλ‹€. λ¬Έμ œμ—μ„œ 0123 = λΆλ™λ‚¨μ„œλΌλŠ” 쑰건을 μ œμ‹œν–ˆλ‹€. 후진할 μ‹œ λ°©ν–₯이 λΆβž”λ‚¨, λ‚¨βž”λΆ / λ™βž”μ„œ, μ„œβž”λ™μœΌλ‘œ μ΄λ™ν•˜κΈ° λ•Œλ¬Έμ— ν˜„μž¬ λ°”λΌλ³΄λŠ” λ°©ν–₯이 0, 1(뢁, 동)이라면 +2λ₯Ό ν•΄μ€ŒμœΌ..

μ•Œκ³ λ¦¬μ¦˜/BOJ

[BOJ] 19238 μŠ€νƒ€νŠΈ νƒμ‹œ - Java

✨ κ΅¬ν˜„ & BFS(μ΅œλ‹¨κ±°λ¦¬) https://www.acmicpc.net/problem/19238 19238번: μŠ€νƒ€νŠΈ νƒμ‹œ 첫 쀄에 N, M, 그리고 초기 μ—°λ£Œμ˜ 양이 주어진닀. (2 ≤ N ≤ 20, 1 ≤ M ≤ N2, 1 ≤ 초기 μ—°λ£Œ ≤ 500,000) μ—°λ£ŒλŠ” λ¬΄ν•œνžˆ 많이 담을 수 있기 λ•Œλ¬Έμ—, 초기 μ—°λ£Œμ˜ 양을 λ„˜μ–΄μ„œ 좩전될 μˆ˜λ„ μžˆλ‹€. λ‹€ www.acmicpc.net πŸ“ κ³ λ €ν•΄μ•Όν•  점 νƒμ‹œμ˜ μœ„μΉ˜μ—μ„œλΆ€ν„° μŠΉκ°κΉŒμ§€μ˜ μ΅œλ‹¨κ±°λ¦¬λ₯Ό κ΅¬ν•œλ‹€. πŸ‘‰ μ‹œκ°„μ΄ˆκ³Ό 주의 ! μ΅œλ‹¨κ±°λ¦¬κ°€ λ™μΌν•œ μŠΉκ°λ“€μ΄ μ‘΄μž¬ν•  경우 κ·Έ 쀑 ν–‰ λ²ˆν˜Έκ°€ κ°€μž₯ μž‘μ€ μŠΉκ°μ„, 그런 μŠΉκ°λ„ μ—¬λŸ¬ λͺ…이라면 μ—΄ λ²ˆν˜Έκ°€ κ°€μž₯ μž‘μ€ μŠΉκ°μ—κ²Œ μ΄λ™ν•œλ‹€. πŸ‘‰ PriorityQueue ν™œμš© 벽에 μ˜ν•΄ μŠΉκ°μ—κ²Œ 가지 λͺ»ν•˜κ±°λ‚˜ λͺ©μ μ§€μ— 가지 λͺ»ν•˜λŠ” 상황 ..

Spring Framework/Spring & Spring Boot

[Spring] Spring Security @AuthenticationPrincipal

인증된 μ‚¬μš©μžμ˜ 정보λ₯Ό κ°€μ Έμ˜€λŠ” 방법은 λ‹€μ–‘ν•˜λ‹€. Authentication authentication = SecurityContextHolder.getContext().getAuthentication(); String currentPrincipalName = authentication.getName(); UserDetails userDetails = (UserDetails) authentication.getPrincipal(); μ˜ˆμ „μ—λŠ” μœ„μ™€ 같은 μ½”λ“œλ₯Ό μ΄μš©ν•΄μ„œ μœ μ €λ₯Ό λΆˆλŸ¬μ™”λ‹€. SecurityContext에 인증된 Authentication 객체λ₯Ό 넣어두고 ν˜„μž¬ μŠ€λ ˆλ“œ λ‚΄μ—μ„œ κ³΅μœ λ˜μ–΄ 관리할 수 μžˆλ„λ‘ ν•˜λŠ” 것이닀. ν•˜μ§€λ§Œ μ΄λ ‡κ²Œ μ‚¬μš©ν•˜λ©΄ getName()만 λΆ€λ₯Ό μˆ˜λ°–μ— μ—†λ‹€. λ‹€λ₯Έ 방법은 또 μ—†λŠ”..

soogoori
πŸƒπŸ»‍β™€οΈμŠ€ν…λ°”μ΄μŠ€ν…