프로그래머스 | 2019 KAKAO BLIND RECRUITMENT | 오픈채팅방 [파이썬 python]
·
Algorithm/프로그래머스
프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 코드 def solution(record): answer = [] # 채팅방 기록 id_name = {} # 유저 아이디: 닉네임 for i in record: if 'Enter' in i: id_name[i.split()[1]] = i.split()[2] answer.append('+' + i.split()[1]) elif 'Change' in i: id_name[i.split()[1]] = i.split()[2] else: answer.append('-' + i.split()[1]) for i in ran..
프로그래머스 | 2018 KAKAO BLIND RECRUITMENT | [1차] 뉴스 클러스터링 [파이썬 python]
·
Algorithm/프로그래머스
프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 처음 시도한 코드 def solution(str1, str2): str1 = str1.upper() str2 = str2.upper() # 다중집합 구하기 A, B = [], [] for i in range(len(str1)-1): str = str1[i:i+2] # 두글자씩 끊어 if str.isalpha(): # 영문자로 된 글자만 다중집합의 원소로 만듦 A.append(str) for i in range(len(str2)-1): str = str2[i:i+2] # 두글자씩 끊어 if str.isalpha..
프로그래머스 | 프로세스 [파이썬 python]
·
Algorithm/프로그래머스
프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 처음 시도한 코드 from collections import deque def solution(priorities, location): answer = [] queue = deque(priorities) while queue: print(queue) process = queue.popleft() if queue and process < max(queue): queue.append(process) else: answer.append(priorities.index(process)) print(answer) 큐를 ..
프로그래머스 | 행렬의 곱셈 [파이썬 python]
·
Algorithm/프로그래머스
프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 행렬곱에 대한 이해가 있어야 문제를 해결할 수 있으므로, 행렬곱에 대한 자세한 내용은 여기를 참고하길 바란다.두 행렬 arr1, arr2의 크기가 각각 m×n, n×r 일 때, arr1의 열과 arr2의 행의 크기가 같을 때만 행렬의 곱셈이 가능하다.arr1과 arr2 곱셈 결과 나오는 행렬의 크기는 m×r이다. 코드 - 방법 1)def solution(arr1, arr2): answer = [] m, n, r = len(arr1), len(arr1[0]), len(arr2[0]) for i in range(m)..
프로그래머스 | 2018 KAKAO BLIND RECRUITMENT | [1차] 캐시 [파이썬 python]
·
Algorithm/프로그래머스
프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 코드 def solution(cacheSize, cities): cache = [] # 캐시 time = 0 # 총 실행시간 if cacheSize > 0: for city in cities: city = city.lower() if city in cache: # 캐시에 존재할 때(cache hit) 최근 위치로 갱신 cache.remove(city) cache.append(city) cache = cache[-cacheSize:] time += 1 else: # 캐시에 존재하지 않으면(cache miss) ..
프로그래머스 | H-index [파이썬 python]
·
Algorithm/프로그래머스
프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 코드 def solution(citations): for h in range(max(citations), 0, -1): # h(범위: 최대 인용 횟수부터 1까지) '역순' 순회 count = 0 # h번 이상 인용된 논문 수 for c_num in citations: if h = h: # 가장 먼저 h번 이상 인용된 논문수가 h번 이상이면 리턴 return h return 0 논문 n 편 중, h번 이상 인용된 논문이 h 편 이상이 될 수 있는 h의 최댓값을 구해야 하는 문제이다. 먼저 문제 이해를 위해 필기..