반응형 분류 전체보기55 백준 2589번 보물섬 골드5 - Python 풀이 2589번 보물섬 문제는 그래프 너비 우선 탐색(BFS) 와 부루트 포스(Brute Force)를 이용하여 푸는 문제다. 기본적인 풀이 아이디어는 1. 모든 칸에 대해 순회하는데 2. 해당 칸이 육지라면 너비 우선 탐색을 사용하고 3. 최단 거리로 이동하는데 있어 가장 긴 시간이 걸리는 두 곳 간의 최단 거리를 저장하는데 4. 그 저장한 시간들 중 최대값이 바로 보물이 묻혀있는 두 곳 사이의 최단 거리를 이동하는 시간이다. 라고 정리할 수 있다. 다음 코드는 pypy3로 제출하면 통과할 수 있지만 Python3로는 시간초과가 발생한다. 방문 여부를 저장하는 추가 배열을 생성해서 않기 위해 graph 배열에 "L"과 'l' 문자를 번갈아 저장하면서 육지를 구분함과 동시에 flag로 활용했다. (결과적으로 .. 2023. 10. 18. 백준 2096번 내려가기 골드5 - Python 풀이 다이나믹 프로그래밍을 활용하는 문제이다. 메모리 제한에 대한 생각 없이 단순히 메모이제이션에 대한 아이디어만 가지고 문제를 풀면 다음과 같은 풀이를 생각할 수 있다. import sys, copy input = sys.stdin.readline n = int(input()) dp_max = [list(map(int, input().split())) for _ in range(n)] dp_min = copy.deepcopy(dp_max) for i in range(1, n): # 0 dp_max[i][0] += max(dp_max[i - 1][0], dp_max[i - 1][1]) dp_min[i][0] += min(dp_min[i - 1][0], dp_min[i - 1][1]) # 1 dp_max[i][.. 2023. 10. 18. 백준 11000번 강의실 배정 골드5 - Python 풀이 문제를 보자마자 직관적으로 이런 풀이를 떠올릴 수 있는데, 수업 시간표를 딕셔너리로 생성하고, 각 시간대 중 배정된 강의 수의 최대 값이 필요한 강의실의 개수일 것이다. import collections n = int(input()) arr = [list(map(int, input().split())) for _ in range(n)] time_table = collections.defaultdict(int) for s, t in arr: for i in range(s, t): time_table[i] += 1 print(max(time_table.values())) 그러나 위 풀이는 메모리 초과가 발생한다. 어짜피 겹치는 시간대만 확인하면 되므로, 시간대를 정렬해서 계산하면 한번만 순회하여 구할 수 있.. 2023. 10. 12. [C언어] 버블정렬(Bubble Sort) 버블정렬: 두 인접한 원소를 검사하여 정렬하는 방법. 시간복잡도: O(n^2) 2020. 10. 26. 5-4.Python Pandas_DataHandling 준비물 import pandas as pd import numpy as np scv읽고 df #우선적으로 데이터 눈으로 확인 df.shape # 데이터 형태 (행X열) df.head() df.tail() #앞,뒤로 확인 df.describe() #cnt,mean,std, min,max, 상하위 n%등 간단한 통계 확인 df['Area'] # 다룰 특정 행 선택 df[df['Area'].str.contains("Korea")] # 한국에 대한 데이터 확인 df['Item'].unique().shape # 유일값 몇개인지 확인 plot_data_tmp = plot_data.groupby(by='Area').sum() # 같은 Area에 대해 다른 cloumn값들을 합해서 나타냄 ※ Groupby DataFr.. 2020. 6. 12. 5-3.Python Pandas_DataCleaning 준비물 import pandas as pd import numpy as np from google.colab import drive drive.mount('/content/gdrive') request_file_path = "/content/gdrive/My Drive/Colab Notebooks/IntroDataAnalysis/311-service-requests.csv" data = pd.read_csv(request_file_path) data['column'].unique().shape #중복X 유일한 값 개수 확인 Missing values? NA: Not applicable NaN: Not a Number (Missing numerical daa) None: a null value or no .. 2020. 6. 12. 이전 1 ··· 5 6 7 8 9 10 다음 반응형