Algorithm
-
[🥰 프로그래머스] 공원 산책Algorithm/1일 1코테 2023. 8. 18. 18:57
문제 https://school.programmers.co.kr/learn/courses/30/lessons/172928 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 dx = {'N':-1, 'S':1, 'E':0, 'W': 0} dy = {'N': 0, 'S':0, 'E':1, 'W':-1} def solution(park, routes): answer = [] x, y = -1, -1 # 시작점 N, M = len(park), len(park[0]) # 공원의 가로세로 # 시작점 찾기 for i in range(N): for j in range..
-
[🥰 프로그래머스] 추억 점수Algorithm/1일 1코테 2023. 8. 17. 22:24
문제 설명 사진들을 보며 추억에 젖어 있던 루는 사진별로 추억 점수를 매길려고 합니다. 사진 속에 나오는 인물의 그리움 점수를 모두 합산한 값이 해당 사진의 추억 점수가 됩니다. 예를 들어 사진 속 인물의 이름이 ["may", "kein", "kain"]이고 각 인물의 그리움 점수가 [5점, 10점, 1점]일 때 해당 사진의 추억 점수는 16(5 + 10 + 1)점이 됩니다. 다른 사진 속 인물의 이름이 ["kali", "mari", "don", "tony"]이고 ["kali", "mari", "don"]의 그리움 점수가 각각 [11점, 1점, 55점]]이고, "tony"는 그리움 점수가 없을 때, 이 사진의 추억 점수는 3명의 그리움 점수를 합한 67(11 + 1 + 55)점입니다. 그리워하는 사람의 ..
-
[😭프로그래머스] 달리기 경주Algorithm/1일 1코테 2023. 8. 17. 22:06
문제 설명 얀에서는 매년 달리기 경주가 열립니다. 해설진들은 선수들이 자기 바로 앞의 선수를 추월할 때 추월한 선수의 이름을 부릅니다. 예를 들어 1등부터 3등까지 "mumu", "soe", "poe" 선수들이 순서대로 달리고 있을 때, 해설진이 "soe"선수를 불렀다면 2등인 "soe" 선수가 1등인 "mumu" 선수를 추월했다는 것입니다. 즉 "soe" 선수가 1등, "mumu" 선수가 2등으로 바뀝니다. 선수들의 이름이 1등부터 현재 등수 순서대로 담긴 문자열 배열 players와 해설진이 부른 이름을 담은 문자열 배열 callings가 매개변수로 주어질 때, 경주가 끝났을 때 선수들의 이름을 1등부터 등수 순서대로 배열에 담아 return 하는 solution 함수를 완성해주세요. 답안 def s..
-
[🥰 leetcode] 692. Top K Frequent WordsAlgorithm/1일 1코테 2022. 10. 19. 12:51
https://leetcode.com/problems/top-k-frequent-words/ Top K Frequent Words - LeetCode Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview. leetcode.com 리스트 안에 가장 많이 존재하는 단어순 && 갯수가 같은 경우엔 사전순 정렬을 기준으로 k개를 뽑아내는 문제 나의 풀이 class Solution: def topKFrequent(self, words: List[str], k: int) -> List[str]: # 중복없는 set 생성..
-
[🥰 leetcode] 1328. Break a PalindromeAlgorithm/1일 1코테 2022. 10. 18. 11:28
https://leetcode.com/problems/break-a-palindrome/ Break a Palindrome - LeetCode Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview. leetcode.com 팰린드롬 문자열을 단 한가지의 문자만 바꾸어 팰린드롬이 아니면서 && 사전식 순서에서 가장 작은 값으로 만드는 문제 예를 들어 abccba => aaccba 나의 풀이 class Solution: def breakPalindrome(self, palindrome: str) -> str: # ..
-
[🥰 leetcode] 53. Maximum SubarrayAlgorithm/1일 1코테 2022. 10. 14. 21:39
https://leetcode.com/problems/maximum-subarray/ Maximum Subarray - LeetCode Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview. leetcode.com 최댓값이 될 수 있는 연속 서브 배열을 찾아라! 나의 풀이 def maxSubArray(self, nums: List[int]) -> int: dp = [0 for _ in range(len(nums))] for i, n in enumerate(nums): # 맨 처음 값이 경우 값 넣고 끝~!~~..
-
[😭 leetcode] 976. Largest Perimeter TriangleAlgorithm/1일 1코테 2022. 10. 12. 11:57
https://leetcode.com/problems/largest-perimeter-triangle/ Largest Perimeter Triangle - LeetCode Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview. leetcode.com 삼각형의 세 변의 길이 합 중 가장 큰 값을 찾는 문제 easy라며... easy라며...!!!! 나의 시도... import itertools class Solution: def largestPerimeter(self, nums: List[int]) -> int..
-
[😭 leetcode] 334. Increasing Triplet SubsequenceAlgorithm/1일 1코테 2022. 10. 11. 20:13
문제 https://leetcode.com/problems/increasing-triplet-subsequence/ Increasing Triplet Subsequence - LeetCode Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview. leetcode.com 증가하는 시퀀스가 3개인 경우를 찾는 문제 # [1,2,3,4,5] => 1,2,3 TRUE # [5,4,3,2,1] => 증가하는 시퀀스가 존재하지 않음. FALSE # [2,1,5,0,4,6] => 0,4,6 TRUE 나의 (시도했으나 장렬..