본문 바로가기

삼성6

인구 이동 Python 정리 및 구현 (백준 16234, 삼성 SW 역량테스트) 인구 이동 백준 16234: https://www.acmicpc.net/problem/16234 Edge case 1. 문제조건 1 day 안에서 여러 구역으로 나눠서 각각 따로따로 average를 구해야하는거였는데 그냥 1day에 모든 구역들의 모든 인구 / 모든 블록 수로 계산해버림 Code 1트: fail 2트: 6936ms (python3) 3트: 4276ms (python3) 4트: 376ms (python3) 1. 1트 (FAIL) FAIL 여러 구역으로 나뉘는걸 생각하지 못하고, 한번에 모든 구역들을 통합해서 다 average를 구해버림 # 인구 이동 # 백준 16234 # https://www.acmicpc.net/problem/16234 # 18:52 - 19:52 FAIL from co.. 2022. 8. 31.
연산자 끼워넣기 Python 정리 및 구현 (백준 14888, 삼성 SW 역량테스트) 연산자 끼워넣기 백준 14888: https://www.acmicpc.net/problem/14888 Edge case 1. 문제조건 dfs 사용가능한건 그냥 쓰는걸로 다만 사용할때, 변수값이 공유되니, 만약 빼게되면 dfs 진행하고 더하기 다시 해줘서 보정해줘야해 Code 1. 1트 itertools 사용 permutation 함수를 제작하여 사용했을 경우, 메모리 초과 발생 # 백준 14888 # https://www.acmicpc.net/problem/14888 # 삼성 기출 # 16:48 - 17:15 # 최댓값, 최솟값 찾기 # 결국 팩토리얼, 팩토리얼이네 from itertools import permutations n = int(input()) numbers = list(map(int, in.. 2022. 8. 30.
경쟁적 전염 Python 정리 및 구현 (백준 18405, 삼성 SW 역량테스트) 경쟁적 전염 백준 18405: https://www.acmicpc.net/problem/18405 Abstract pypy3 환경 bfs 사용: 348ms deque 사용: 336ms heapq 사용: 400ms Edge case 1. 풀이태도 한번씩 중간중간 점검해나가면서 풀어야해 (입력은 잘 들어오는지) 문제조건 꼼꼼히 읽기 (s는 0부터 시작 등..) for 문 안에 list append 있으면 초기화도 생각 2. 범위 설정 위치는 1,1부터 시작 k 이하의 자연수이므로 범위 설정(1, k+1) Code 1. BFS BFS를 사용하되, list에 바이러스의 번호를 따로 넣지 않았으므로, virus list를 1부터 k+1까지 만들어서 진행하였음 # 백준 18405 # 경쟁적 전염 # 10:55 # .. 2022. 7. 29.
특정거리의 도시 찾기 Python 정리 및 구현 (백준 18352, 삼성 SW 역량테스트 기출) 특정거리의 도시 찾기 백준 18352: Edge case 1. 문제조건 오름차순 확인 인덱스가 1부터 시작하는 것 확인 값의 범위가 크므로, 으로 문제 풀 생각 시작지점에서 이미 거리가 k이상이면 더 알아볼 필요도 없음 (3번 풀이 참고) Code 1. Dijkstra list 사용 시간초과 # 백준 # 특정거리의 도시 찾기 # dfs # 1트 Dijkstra로 풀었으나 시간초과 #@@ index가 1번부터 주어짐 import sys input = sys.stdin.readline INF = int(1e9) #------Input------# #-----------------# n, m, k, x = map(int, input().split()) graph = [[] for _ in range(n+1)].. 2022. 7. 28.