본문 바로가기

algorithm122

[Python] 소프티어 : 로드 밸런서 트래픽 예측 https://softeer.ai/practice/info.do?idx=1&eid=629&sw_prbl_sbms_sn=156249 Softeer 연습문제를 담을 Set을 선택해주세요. 취소 확인 softeer.ai 💡 문제 풀이 구현 문제이다. 노드에 접근하는 순서가 존재하고 존재에 맞춰서 요청을 처리해 주면 된다. 1000건의 요청이 들어왔고, 루트 밸런서에 3, 5, 6번 밸런서가 연결되어 있으면 각 밸런서에 공통적으로 1000 // 3건 만큼 요청을 수행할 것이고 순서대로 진행되야 하니 1000 % 3 만큼 각 노드에 순서대로 1만큼 추가해 주면 된다. ✔️ 느낀 점 문제가 이해 안 가서 오래 걸렸고 중간에 순서가 있다는 걸 알아채지 못해서 시간을 많이 소비하였다. 그냥 재귀적으로 풀면 무조건 시간.. 2023. 2. 19.
[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] 프로그래머스 : 게임 맵 최단거리 https://school.programmers.co.kr/learn/courses/30/lessons/1844 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 💡 문제 풀이 가벼운 BFS 문제이다. 최단거리를 따져야 하므로 생각할 것이 많다. 나는 이동할 수 있는 위치에 이동했을 때 최솟값을 넣어주는 방식으로 구현했다. 그리고 상대의 위치는 항상 끝에 있으므로 따로 계산안하고 넘겨주었다. ✔️ 느낀 점 오랜만에 시작한 알고리즘이라서 파이썬 문법에 익숙하지 못하다는게 느껴졌다. 문법에 대한 기억을 되살리는 것이 좋아보이고 새로운 것을 공부하기보단 공부한 것.. 2023. 1. 29.
[Python] 프로그래머스 : 호텔 방 배정 https://school.programmers.co.kr/learn/courses/30/lessons/64063 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 💡 문제 풀이 ✔️ 느낀 점 💻 코드 import sys sys.setrecursionlimit(10000000) def find(x, rooms): if x not in rooms: rooms[x] = x+1 return x rooms[x] = find(rooms[x], rooms) return rooms[x] def solution(k, room_number): ans = [] rooms = .. 2022. 10. 19.