[programmers] 합승 택시 요금 (python)
·
Study/algorithm
https://school.programmers.co.kr/learn/courses/30/lessons/72413 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 회고 다익스트라 알고리즘이 익숙지 않아서 개념 공부를 하고 푼 문제 다익스트라 알고리즘을 공부하고도 바로 풀지는 못했다. 문제를 작은 문제로 나눠서 풀었다. S와의 최단거리, A와의 최단 거리, B와의 최단 거리를 가지는 한 point를 찾아서 그때의 비용을 답으로 구한다. 총 세 가지 다익스트라 distance를 구했다. (S, A, B) import heapq def solution(n,..
[softeer] [인증평가(1차) 기출] 로봇이 지나간 경로 (python)
·
Study/algorithm
https://softeer.ai/practice/info.do?idx=1&eid=577 Softeer 연습문제를 담을 Set을 선택해주세요. 취소 확인 softeer.ai 문제 회고 시작할 수 있는 point의 특징은 본인은 #이고 주변에 하나의 #만을 가지는 point를 먼저 찾았다. 총 두 개의 point가 찾아지는데 하나는 start 나머지는 end point로 설정하고 경로를 탐색한다. 가장 오래 고민했던 부분은 바라보는 방향을 돌릴 때 왼쪽, 오른쪽 어느 방향으로 돌려야 최적의 방법인지 결정하는 부분이었다. 처음에는 그냥 조건문으로 처리하려고 했는데 코드가 너무 길어질 것 같아서 softeer algo tutor를 참고해서 index를 이용해서 풀었다. -1을 해서 같은 방향이면 왼쪽으로, +..
[softeer] [인증평가(1차) 기출] 안전운전을 도와줄 차세대 지능형 교통시스템 (python)
·
Study/algorithm
https://softeer.ai/practice/info.do?idx=1&eid=580 Softeer 연습문제를 담을 Set을 선택해주세요. 취소 확인 softeer.ai 문제 회고 bfs를 이용해서 경로를 찾아주면 된다. 하나 신경 쓸 부분은 해당 교차로에 오는 방향에 따라 다음 교차로로 갈 수 있냐 없냐가 정해진다는 점이다. 처음에는 당연하게 check list를 만들어서 방문한 교차로는 다시 방문하지 않도록 하였는데 계속해도 틀려서 조금 검색을 해보았더니 방문한 교차로도 돌고 돌면서 최종적으로 갈 수 있는 교차로를 모두 구하는 문제였다. 문제를 잘 이해하는 것이 중요할 것 같다. 변수 이름 짓기도 너무 어렵다... import sys from collections import deque n, t ..
[softeer] [인증평가(3차) 기출] 플레이페어 암호 (python)
·
Study/algorithm
https://softeer.ai/practice/info.do?idx=1&eid=804 Softeer 연습문제를 담을 Set을 선택해주세요. 취소 확인 softeer.ai 문제 회고 주어진 규칙을 하나씩 구현해내는 문제였던 것 같다. 하나씩 차근차근해 나가 어렵지 않게 풀 수 있었다. import sys message = sys.stdin.readline().strip() key = sys.stdin.readline().strip() answer = '' # 1. key 5x5에 배열 # 2. message 두 글자씩 규칙에 맞춰서 배열 # 3. 배열을 하나씩 확인하며 같은 행에 존재하면 오른쪽으로 한칸 이동한 칸에 적힌 글자를 사용 HE -> EI, XX -> ZZ # 4. 같은 열에 존재한다면 아래..