πŸ‘¨πŸ»‍πŸ’» PS

    [파이썬 PYTHON] λ°±μ€€ 2146번 【닀리 λ§Œλ“€κΈ°γ€‘

    import sys from collections import deque N = int(input()) _map = [list(map(int, sys.stdin.readline().split())) for _ in range(N)] dr = [1, -1, 0, 0] dc = [0, 0, 1, -1] # 섬 라벨링 def labeling(label): while queue: r, c = queue.popleft() for i in range(4): nr = dr[i] + r nc = dc[i] + c if 0

    [파이썬 PYTHON] λ°±μ€€ 2638번 γ€μΉ˜μ¦ˆγ€‘

    import sys from collections import deque import copy row, col = map(int, input().split()) _map = [list(map(int, sys.stdin.readline().split())) for _ in range(row)] queue = deque([]) checked = [[False]*col for _ in range(row)] dr = [1, -1, 0, 0] dc = [0, 0, 1, -1] def bfs(): copiedCheck = copy.deepcopy(checked) queue.append([0, 0]) while queue: r, c = queue.popleft() for i in range(4): nr = r + d..

    [파이썬 PYTHON] λ°±μ€€ 16236번 【아기 상어】

    import sys import copy from collections import deque # 예제 μž…λ ₯ N = int(input()) _map = [[0]*N for _ in range(N)] checked = [[False]*N for _ in range(N)] queue = deque([]) for i in range(N): info = list(map(int,sys.stdin.readline().split())) for j in range(N): _map[i][j]=info[j] if info[j] == 9: _map[i][j] = 0 shark = [i,j,0] queue.append(shark) # bfs()둜 먹을 수 μžˆλŠ” 먹이 νƒμƒ‰ν•˜κΈ° dr = [1,-1,0,0] dc = [0,0,1,..

    [파이썬 PYTHON] λ°±μ€€ 14502번 γ€μ—°κ΅¬μ†Œγ€‘

    import copy import sys from collections import deque # 예제 μž…λ ₯ row,col= map(int,input().split()) _map = [[0]*col for _ in range(row)] for i in range(row): info = list(map(int,sys.stdin.readline().split())) for j in range(col): _map[i][j]=info[j] queue = deque([]) # λ°”μ΄λŸ¬μŠ€ μœ„μΉ˜ μ €μž₯ for i in range(row): for j in range(col): if _map[i][j] == 2: queue.append([i,j]) dr = [1,-1,0,0] dc = [0,0,1,-1] ans = -1e..

    [파이썬 PYTHON] λ°±μ€€ 15686번 γ€μΉ˜ν‚¨ 배달】

    import sys #예제 μž…λ ₯ N,M = map(int,sys.stdin.readline().split()) _map = [list(map(int,sys.stdin.readline().split())) for _ in range(N)] chickens = [] houses = [] # 집과 μΉ˜ν‚¨μ§‘ μ’Œν‘œ μ €μž₯ for row in range(N): for col in range(N): if _map[row][col] == 2: chickens.append([row,col]) elif _map[row][col] == 1: houses.append([row,col]) selected = [] checked = [False]*(len(chickens)) ans = 1e9 def getMinDistance(sel..

    [파이썬 PYTHON] λ°±μ€€ 15684번 【사닀리 μ‘°μž‘γ€‘

    import sys # 예제 μž…λ ₯ N, M, H = map(int, sys.stdin.readline().split()) ladders = [list(map(int, sys.stdin.readline().split())) for _ in range(M)] _map = [[0] * N for _ in range(H)] # 사닀리 정보 μ €μž₯ # μ™Όμͺ½μ€ 1 였λ₯Έμͺ½μ€ -1둜 μ €μž₯ for ladder in ladders: ladderR = ladder[0] - 1 ladderC = ladder[1] - 1 _map[ladderR][ladderC] = 1 _map[ladderR][ladderC + 1] = -1 # λͺ¨λ“  i번 κ²°κ³Όκ°€ i번 인가? def isEqual(): for i in range(N): locat..

    [파이썬 PYTHON] μ½”λ“œν¬μŠ€ 1426D

    Problem - 1426D - Codeforces codeforces.com μˆ˜μ—΄μ΄ μ£Όμ–΄μ§€λŠ”λ°, νŠΉμ • 뢀뢄합이 0이 λ˜μ§€ μ•Šλ„λ‘ ν•˜λŠ” μ΅œμ†Œ 횟수λ₯Ό κ΅¬ν•˜λŠ” λ¬Έμ œμ΄λ‹€. 예둜 1 -5 3 2 μœ„μ™€ 같은 μˆ˜μ—΄μ΄ μžˆμ„ λ•Œ, {-5, 3, 2} 의 합은 0이 λ˜λ―€λ‘œ 1 -5 3 {Block} 2 μœ„ λͺ¨μ–‘ 처럼 사이λ₯Ό λŠμ–΄λ†”μ•Ό ν•˜κ³  1번으둜 μΆ©λΆ„ν•˜λ―€λ‘œ 닡은 1이닀. 16 -5 -11 -15 10 5 4 -4 μœ„μ˜ κ²½μš°λ„ 16 -5 {Block} -11 -15 10 {Block} 5 4 {Block} -4 총 3λ²ˆμ„ 막아야 뢀뢄합이 0이 될 수 μ—†λ‹€. 이 λ¬Έμ œλŠ”, ꡬ간합 μ•Œκ³ λ¦¬μ¦˜μ„ μ‚¬μš©ν•΄μ•Όν•œλ‹€. · ꡬ간 ν•© μ•Œκ³ λ¦¬μ¦˜ (Prefix Sum Algorithm) πŸ‘©πŸ»‍πŸ’» 지식 μ°½κ³  πŸ“š inkyu-yoon.github.io..

    [파이썬 PYTHON] λ°±μ€€ 3190번 【뱀】

    from collections import deque boardSize = int(input()) appleNum = int(input()) # 맡 생성 board = [[0]*boardSize for _ in range(boardSize)] # 사과 μœ„μΉ˜ μ €μž₯ (1둜 ν‘œμ‹œ) for _ in range(appleNum): row,col=map(int,input().split()) board[row-1][col-1] = 1 # λͺ…λ Ή μ €μž₯ (key : value 둜) commands = {} commandNum = int(input()) for _ in range(commandNum): sec,command = map(str,input().split()) commands[int(sec)]=command # ..

    [파이썬 PYTHON] λ°±μ€€ 2812번 γ€ν¬κ²Œ λ§Œλ“€κΈ°γ€‘

    문제 μ ‘κ·Ό 방법을 예제둜 μ„€λͺ…해보겠닀. 10 4 4177252841 μœ„μ™€ 같이 10개의 μˆ«μžκ°€ 주어지고, 4개의 숫자λ₯Ό μ‚­μ œν•  수 μžˆλ‹€. κ°€μž₯ 큰 수λ₯Ό 좜λ ₯ν•˜κΈ° μœ„ν•΄μ„œλŠ”, μ•žμ˜ μžλ¦¬μˆ˜κ°€ μ»€μ•Όν•œλ‹€. μ•ž 자리 μˆ˜λΆ€ν„° ν•˜λ‚˜μ”© μŠ€νƒμ— 넣을 것인데, μŠ€νƒμ— λ“€μ–΄κ°ˆ μˆ˜κ°€ μŠ€νƒμ— λ“€μ–΄μžˆλŠ” μˆ˜λ³΄λ‹€ 큰 경우 & μ‚­μ œ νšŸμˆ˜κ°€ λ‚¨μ•„μžˆλŠ” 경우 μŠ€νƒμ— μžˆλŠ” 숫자λ₯Ό μ§€μšΈ 것이닀. μ˜ˆμ‹œλ‘œ 보면 ν˜„μž¬ answer μŠ€νƒ = [] 은 λΉ„μ–΄μžˆλ‹€. 4177252841 수λ₯Ό μ•ž 자리 μˆ˜λΆ€ν„° 넣을 것이닀. answer μŠ€νƒμ— 비ꡐ할 μˆ˜κ°€ μ—†μœΌλ―€λ‘œ 첫번째 μžλ¦¬λŠ” 일단 μŠ€νƒμ— μž…λ ₯ν•œλ‹€. answer = [ 4 ] 4 177252841 이제 1을 넣을 차둀인데, answer μŠ€νƒ μ•ˆμ— μžˆλŠ” 4κ°€ 더 ν¬λ―€λ‘œ 일단 μž…λ ₯ν•œλ‹€. answer = [ 4 1..

    [JAVA] ν”„λ‘œκ·Έλž˜λ¨ΈμŠ€ μŠ€νƒ/큐 -【닀리λ₯Ό μ§€λ‚˜λŠ” νŠΈλŸ­γ€‘

    import java.util.*; class Solution { public int solution(int bridge_length, int weight, int[] truck_weights) { Queue bridge = new LinkedList(); Queue truck = new LinkedList(); for(int i=0;i=totalWeight+waitingTruck)){ bridge.offer(truck.poll()); totalWeight+=waitingTruck; totalTruckNum++; //μ°¨κ°€ 더 λͺ»μ˜¬λΌμ˜€λŠ” 경우 }else{ bridge.offer(0); } time++; } time+=bridge_length; return time; } } 겨우겨우 혼자 힘으둜 ν’€μ—ˆλ‹€. λ¨Ό..

    [JAVA] ν”„λ‘œκ·Έλž˜λ¨ΈμŠ€ μŠ€νƒ/큐 -【프린터】

    import java.util.*; class Solution { public int solution(int[] priorities, int location) { int answer = 0; // 큐(printer)μ—λŠ” [μ€‘μš”λ„, μ΄ˆκΈ°μœ„μΉ˜] κ°€ λ‹΄κΈ΄ 배열을 넣어쀄 것 // μš°μ„ μˆœμœ„ 큐(rank)μ—λŠ” ν”„λ¦°ν„°μ˜ μ€‘μš”λ„λ₯Ό λ‚΄λ¦Όμ°¨μˆœμœΌλ‘œ 넣어쀄 것 Queue printer = new LinkedList(); PriorityQueue rank = new PriorityQueue(Collections.reverseOrder()); // ν”„λ¦°ν„° 정보λ₯Ό 큐와 μš°μ„ μˆœμœ„ 큐에 λ„£μ–΄μ€€λ‹€. for(int i=0;i

    [JAVA] ν”„λ‘œκ·Έλž˜λ¨ΈμŠ€ ν•΄μ‹œ -γ€λ² μŠ€νŠΈμ•¨λ²”γ€‘

    import java.util.*; class Solution { // μž₯λ₯΄λ³„ ν”Œλ ˆμ΄ 횟수λ₯Ό μ•Œμ•„μ•Ό ν•  것 // ν•΄λ‹Ή μž₯λ₯΄λ‚΄μ—μ„œ ν”Œλ ˆμ΄ 횟수 λ‚΄λ¦Όμ°¨μˆœμœΌλ‘œ μˆ˜λ‘ν•  것 public int[] solution(String[] genres, int[] plays) { //1. μž₯λ₯΄λ³„ 총 μž¬μƒμˆ˜λ₯Ό map을 μ΄μš©ν•΄μ„œ ꡬ함 Map playsPerGenres = new HashMap(); for (int i = 0; i < genres.length; i++) { playsPerGenres.put(genres[i], playsPerGenres.getOrDefault(genres[i], 0) + plays[i]); } //2. μž₯λ₯΄λ³„ 총 μž¬μƒμˆ˜λ₯Ό κ³„μ‚°ν•œ playsPerGenresλ₯Ό μ‚¬μš©ν•΄μ„œ μž¬μƒνšŸμˆ˜λ₯Ό κΈ°μ€€μœΌλ‘œ μ •λ ¬ν•œλ‹€. ..

    [JAVA] λ°±μ€€ 4179번 γ€λΆˆ!】

    예제둜 μ–΄λ–»κ²Œ κ΅¬ν˜„ν–ˆλŠ”μ§€ 확인해보겠닀. λ¨Όμ €, 이 λ¬Έμ œλŠ” λ‹Ήμ—°νžˆ BFS둜 μ ‘κ·Όν•΄μ•Όν•œλ‹€. BFSλ₯Ό μ‹œν–‰ν•  λ•Œ, 큐에 무쑰건 Jκ°€ 제일 첫번째둜 λ“€μ–΄κ°€μ„œ, λ¨Όμ € BFS 탐색을 ν•˜λ„λ‘ ν–ˆλ‹€. κ·Έλž˜μ„œ fire μ΄λΌλŠ” νμ—λŠ” 뢈의 μœ„μΉ˜λ₯Ό λ¨Όμ € λ‹΄κ³ , bfs에 μ‚¬μš©ν•  qλΌλŠ” νμ—λŠ” Jμœ„μΉ˜λ₯Ό λ‹΄μ•˜λ‹€. 그리고, fire에 λ‹΄μ•„ λ‘” 뢈의 μœ„μΉ˜λ₯Ό q에 λ‹΄μ•˜λ‹€. JλŠ” BFS 탐색 κ³Όμ •μ—μ„œ [.] 인 κ²½μš°μ—λ§Œ 이동할 수 μžˆμ§€λ§Œ, F(뢈)의 κ²½μš°λŠ” J인 κ²½μš°μ—λ„ 이동할 수 μžˆλ„λ‘ κ΅¬ν˜„ν•˜μ˜€λ‹€. μœ„ 그림처럼, J μ˜†κΉŒμ§€ Fκ°€ λ‹€κ°€μ™”μ§€λ§Œ, Jκ°€ 움직일 ν„΄μ΄λ―€λ‘œ νƒˆμΆœν•  수 μžˆλ‹€. μœ„ κ²½μš°μ—λŠ” Jκ°€ 경계선 κΉŒμ§€ λ„λ‹¬ν–ˆμ§€λ§Œ, Fκ°€ 움직일 턴이 μ§„ν–‰λ˜λ©΄, νƒˆμΆœν•  수 μ—†κ²Œ λœλ‹€. λ”°λΌμ„œ 이 경우λ₯Ό 염두해두고 κ΅¬ν˜„μ„ ν•΄μ•Όν•œλ‹€. ( 이 λ°˜λ‘€ λ•Œ..

    [JAVA] λ°±μ€€ 2493번 【탑】

    이 λ¬Έμ œλŠ”, κ°„λ‹¨ν•˜κ²Œ ν•΄μ„ν•˜λ©΄ 탑이 일렬둜 μžˆμ„ λ•Œ, μžμ‹ μ˜ μ™Όμͺ½μ— μžˆλŠ” 탑 쀑 μžμ‹ κ³Ό κ°€μž₯ κ°€κΉŒμš΄ νƒ‘μ˜ μœ„μΉ˜λ₯Ό μ°ΎλŠ” λ¬Έμ œμ΄λ‹€. (없을 μ‹œ 0) 이 문제λ₯Ό μ ‘κ·Όν•  λ•Œμ—λŠ”, ν˜„μž¬ 탑 μœ„μΉ˜ μ™Όμͺ½μ—, ν˜„μž¬ 탑과 κ°€μž₯ κ°€κΉŒμš°λ©΄μ„œ 높은 νƒ‘μ˜ μœ„μΉ˜λ₯Ό 찾지 말고, ν˜„μž¬ 탑과 κ°€μž₯ κ°€κΉŒμš°λ©΄μ„œ 높은 νƒ‘μ˜ 높이λ₯Ό λ¨Όμ € μ°Ύμ•„λ³΄λŠ” 것이 μ΄ν•΄ν•˜κΈ° μ’‹λ‹€. import java.io.*; import java.util.*; public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); int N = Integer.valu..

    [Docker] 도컀 κ΅κ³Όμ„œ Ch.3 μ—°μŠ΅λ¬Έμ œ

    μ—°μŠ΅λ¬Έμ œ 도컀 ν—ˆλΈŒμ— 곡유된 diamol/ch03-lab 이미지가 μžˆλ‹€. 이 이미지 μ•ˆμ—λŠ” ch03.txt κ°€ μžˆλŠ”λ°, ν•΄λ‹Ή ν…μŠ€νŠΈ 파일 μ•ˆμ—, 본인의 이름을 μΆ”κ°€ν•˜κ³  μƒˆλ‘œμš΄ 이미지λ₯Ό λΉŒλ“œν•΄μ„œ 싀행해라 λ¨Όμ €, diamol/ch03-lab 을 μ‹€ν–‰μ‹œμΌœμ•Ό ν•˜λŠ”λ°, μ»¨ν…Œμ΄λ„ˆμ— μ ‘μ†ν•˜μ—¬ txtνŒŒμΌμ— μƒˆλ‘œμš΄ λ‚΄μš©μ„ μž‘μ„±ν•΄μ•Ό ν•˜λ―€λ‘œ -it μ˜΅μ…˜μœΌλ‘œ μ ‘μ†ν•œλ‹€. 그리고 echo λͺ…λ Ήμ–΄λ‘œ λ‚΄μš©μ„ μΆ”κ°€ν•œ λ’€, cat λͺ…λ Ήμ–΄λ‘œ μΆ”κ°€λ˜μ—ˆλŠ”μ§€ 확인해본닀. 잘 적용된 것을 확인할 수 μžˆλ‹€. 이제 μ»¨ν…Œμ΄λ„ˆ μ•ˆμ— λ‚΄μš©μ΄ λ³€κ²½λ˜μ—ˆμœΌλ―€λ‘œ, commit λͺ…λ Ήμ–΄λ‘œ 이 λ³€κ²½λœ λ‚΄μš©μ„ κ°–λŠ” 이미지λ₯Ό μƒˆλ‘œ λΉŒλ“œν•΄λ³Έλ‹€. μƒˆλ‘œμš΄ 이미지가 μƒμ„±λœ 것을 확인할 수 μžˆλ‹€. 이제 이 이미지λ₯Ό μ»¨ν…Œμ΄λ„ˆλ‘œ μ‹€ν–‰μ‹œν‚¨ λ’€, ν…μŠ€νŠΈ νŒŒμΌμ„ ν™•μΈν•΄λ³΄μž. λ³€κ²½ν•œ λŒ€λ‘œ..