본문 바로가기

Python265

[프로그래머스] 추억점수 def solution(name, yearning, photo): answer = [] # {'may': 5, 'kein': 10, 'kain': 1, 'radi': 3} name_dict = {name:yearning[i] for i,name in enumerate(name)} for i,row in enumerate(photo): total = 0 for j,col in enumerate(row): if name_dict.get(col) != None: total += name_dict[col] answer.append(total) return answer 이번 문제는 사전 자료형을 사용하여 간단하게 풀 수 있던 문제였다. 여기서 기억해야 할 점은 사전 자료형에서 어떠한 값을 접근할 때 get() 메.. 2023. 6. 23.
[프로그래머스] 달리기 경주 def solution(players, callings): # {'mumu': 0, 'soe': 1, 'poe': 2, 'kai': 3, 'mine': 4} player_dict = {player:rank for rank,player in enumerate(players)} # {0: 'mumu', 1: 'soe', 2: 'poe', 3: 'kai', 4: 'mine'} rank_dict = {rank:player for rank,player in enumerate(players)} for call in callings: call_index = player_dict[call] prev_index = call_index -1 player_dict[rank_dict[call_index]], player_di.. 2023. 6. 23.
[Softeer 기출문제] GBC import sys n,m = map(int,input().split()) limit = [0]*101 index = 1 test_index = 1 max_value = 0 for i in range(n): length, limit_fast = map(int,input().split()) for j in range(index,index+length): limit[j] = limit_fast index += length for i in range(m): test_length, test_fast = map(int,input().split()) for j in range(test_index,test_index + test_length): if test_fast > limit[j]: diff = test_fas.. 2023. 5. 30.
[백준 16236번] 아기 상어 from collections import deque n = int(input()) area = [] result = 0 shark_size = 2 ate_fish = 0 nx = [-1,1,0,0] ny = [0,0,-1,1] for i in range(n): area.append(list(map(int,input().split()))) for i in range(n): for j in range(n): if area[i][j] == 9: shark_location_x, shark_location_y = i, j def bfs(x,y,sharkSize): visited = [[False]*n for _ in range(n)] distence = [[0]*n for _ in range(n)] visite.. 2023. 5. 27.
[HackerRank] Knapsack def unboundedKnapsack(k, arr): # Write your code here row = len(arr) col = k dp = [[0]*(k+1) for _ in range(row+1)] for i in range(1,row+1): dp[i][0] = 1 for i in range(1,row+1): for j in range(1,col+1): if j >= arr[i-1]: dp[i][j] = dp[i-1][j] + dp[i][j-arr[i-1]] else: dp[i][j] = dp[i-1][j] for i in range(col,-1,-1): if dp[row][i] != 0: return i 이번 문제는 주어진 배열(arr)의 원소들을 가지고 만들 수 있는 타겟 값(k)을 초과하지.. 2023. 5. 20.
[HackerRank] Count Luck def countLuck(matrix, k): row = len(matrix) col = len(matrix[0]) nx = [-1,1,0,0] ny = [0,0,-1,1] start_x, start_y = 0, 0 count = 0 graph = [] for i in range(row): graph.append(list(matrix[i])) for i in range(row): for j in range(col): if graph[i][j] == 'M': start_x, start_y = i, j # Write your code here def dfs(area, x, y): # visited[x][y] = True if area[x][y] == '*': return True direct_count = .. 2023. 5. 19.