Computer Science/알고리즘(백준+프로그래머스)
Softeer) 플레이페어 암호_Python
#문제 https://softeer.ai/practice/info.do?idx=1&eid=804 Softeer 연습문제를 담을 Set을 선택해주세요. 취소 확인 softeer.ai #문제 분석 - 음.. 아주아주 조건이 많은 빡구현 문제이다. 코드 한줄이라도 틀리면 그냥 바로 틀리기 딱 쉬운 문제..? 딱히 알고리즘은 없고 주어진 조건만 잘 구현하면 될듯하다. 이런 문제는 중간중간 디버깅을 해가면서 맞았는지 확인해봐야 시간 낭비를 안할 것 같다. 현대도 구현을 좋아하나..? - 딕셔너리를 잘 활용했더니 마지막 변환 과정에서 좌표를 따로 손대지 않고 쉽게 풀 수 있었다. #코드 import sys from collections import deque input=sys.stdin.readline messag..
백준 1238) 파티_Python
# 문제 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 #문제 분석 - 처음에는 플로이드-워셜로 충분히 풀 수 있는 문제라고 생각했다. 각 노드로 가는 최단 거리들을 구한 다음에, i->X로 가는 최단 거리+ X->i로 가는 최단 거리를 더해줘서 이의 최대값을 구하는 식으로 문제를 풀었다. import sys input=sys.stdin.readline N,M,X=map(int,input().split()) bo..
백준 1520) 내리막길_Python
문제 분석 https://www.acmicpc.net/problem/1520 1520번: 내리막 길 여행을 떠난 세준이는 지도를 하나 구하였다. 이 지도는 아래 그림과 같이 직사각형 모양이며 여러 칸으로 나뉘어져 있다. 한 칸은 한 지점을 나타내는데 각 칸에는 그 지점의 높이가 쓰여 있으 www.acmicpc.net 처음에는 단순하게 프로그래머스의 등굣길 문제 느낌으로 풀려고 했다. BFS+DP 방식이다. for r in range(0,M): for c in range(0,N): for i in range(4): nr,nc=r+dr[i],c+dc[i] if DP[r][c]!=0 and 0좌->상으로 생각한다. DFS가 Return되는 지점은 두 지점이 생긴다. 끝 지점에 도달하면 경로 1개가 추가된 것이..