본문 바로가기

알고리즘135

[Python] 백준 6603번 : 로또 https://www.acmicpc.net/problem/6603 6603번: 로또 입력은 여러 개의 테스트 케이스로 이루어져 있다. 각 테스트 케이스는 한 줄로 이루어져 있다. 첫 번째 수는 k (6 < k < 13)이고, 다음 k개 수는 집합 S에 포함되는 수이다. S의 원소는 오름차순으로 www.acmicpc.net 💡 문제 풀이 백트래킹 문제이다. 라이브러리를 사용해서 풀었다. ✔️ 느낀 점 계속 틀렸다고 나오길래 뭐가 문제인가 했더니 print("")을 해서 틀렸었다. 💻 코드 from itertools import combinations import sys input = sys.stdin.readline while True: tmp = list(input().split()) if tmp[0] .. 2023. 2. 14.
[Python] 백준 11660번 : 구간 합 구하기 5 https://www.acmicpc.net/problem/11660 11660번: 구간 합 구하기 5 첫째 줄에 표의 크기 N과 합을 구해야 하는 횟수 M이 주어진다. (1 ≤ N ≤ 1024, 1 ≤ M ≤ 100,000) 둘째 줄부터 N개의 줄에는 표에 채워져 있는 수가 1행부터 차례대로 주어진다. 다음 M개의 줄에는 네 www.acmicpc.net 💡 문제 풀이 기본적인 구간합 문제이다. ✔️ 느낀 점 문제를 이번에도 제대로 안 읽고 풀어서 헛되이 보낸 시간이 있었다. 조심하자..! 💻 코드 import sys input = sys.stdin.readline n, m = map(int, input().split()) board = [] for _ in range(n): board.append(lis.. 2023. 2. 10.
[Python] 소프티어 : [인증평가(1차) 기출] 로봇이 지나간 경로 https://softeer.ai/practice/info.do?idx=1&eid=577&sw_prbl_sbms_sn=145221 Softeer 연습문제를 담을 Set을 선택해주세요. 취소 확인 softeer.ai 💡 문제 풀이 구현 문제이다. 경로를 구하는 도중에 만약 다음 칸으로 진행할 수 없다면 왼쪽과 오른쪽을 확인해서 바로 경로를 찾게 했다. ✔️ 느낀 점 오랜만에 구현 문제를 푸는데 조금 아쉬웠다. 중복된 코드를 최대한 줄여보고 싶었는데 생각보다 많이 못 줄인 것 같다. 💻 코드 import sys input = sys.stdin.readline ORDER = ">v 2023. 2. 10.
[Python] 소프티어 : [21년 재직자 대회 예선] 좌석 관리 https://softeer.ai/practice/info.do?idx=1&eid=625 Softeer 연습문제를 담을 Set을 선택해주세요. 취소 확인 softeer.ai 💡 문제 풀이 기본적인 구현 문제이다. 이 문제의 핵심은 필요한 좌석을 리턴하는 것이 가장 중요하다. 앉을 수 있는 자리(0)를 기준으로 현재 사원이 앉아있는 자리(2)와의 거리를 계산해서 전체 중에서 가장 안전도가 높은 좌석을 선택해야 한다. ✔️ 느낀 점 생각보다 훨씬 오래 걸린 문제이다. 메서드를 나눠서 작성해서 단계적으로는 잘 접근했지만 유효한 좌석을 찾아 리턴하는 메서드를 구현하는데 오래 걸렸다. 💻 코드 import sys input = sys.stdin.readline moves = [(1,0), (0,1), (-1,0).. 2023. 2. 9.
[Python] 백준 1446번 : 지름길 https://www.acmicpc.net/problem/1446 1446번: 지름길 첫째 줄에 지름길의 개수 N과 고속도로의 길이 D가 주어진다. N은 12 이하인 양의 정수이고, D는 10,000보다 작거나 같은 자연수이다. 다음 N개의 줄에 지름길의 시작 위치, 도착 위치, 지름길의 길이 www.acmicpc.net 💡 문제 풀이 다익스트라 문제이다. 그리디로도 풀 수 있을 것 같다. 다익스트라 알고리즘을 구현할 줄 알고, 알고리즘을 적용할 노드를 어떻게 설정할지 고민해야 한다. 일반적인 문제와 다르게 특정 노드가 주어지지 않아 고속도로의 길이만큼 노드가 주어졌다고 생각해야 한다. ✔️ 느낀 점 오랜만에 다익스트라 문제를 풀어보기 위해서 쉬운 문제로 갔는데 생각보다 쉽게 접근이 되지 않았다. 파이썬.. 2023. 1. 31.
[Python] 프로그래머스 : 게임 맵 최단거리 https://school.programmers.co.kr/learn/courses/30/lessons/1844 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 💡 문제 풀이 가벼운 BFS 문제이다. 최단거리를 따져야 하므로 생각할 것이 많다. 나는 이동할 수 있는 위치에 이동했을 때 최솟값을 넣어주는 방식으로 구현했다. 그리고 상대의 위치는 항상 끝에 있으므로 따로 계산안하고 넘겨주었다. ✔️ 느낀 점 오랜만에 시작한 알고리즘이라서 파이썬 문법에 익숙하지 못하다는게 느껴졌다. 문법에 대한 기억을 되살리는 것이 좋아보이고 새로운 것을 공부하기보단 공부한 것.. 2023. 1. 29.