라인플러스 2019 상반기 인턴 채용 코딩테스트
2019년 상반기 LINE 인턴 채용 코딩테스트 문제 해설 - LINE ENGINEERING
LINE에서 개발 직군을 뽑을 때 신입이든 경력이든 가장 먼저 보는 것이 코딩 테스트입니다. LINE의 코딩 테스트는 일반적인 알고리즘 경진대회와는 경향이 조금 다른데요. 알고리즘 경진대회는 1��
engineering.linecorp.com
from collections import deque def solution(conyPosition, brownPosition): time = 0 visit = [[0]*2 for _ in range(200001)] q = deque() q.append((brownPosition, 0)) while 1: conyPosition += time if conyPosition > 200000 or conyPosition < 0: return -1 if visit[conyPosition][time%2]: return time for i in range(0, len(q)): current = q.popleft() currentPosition = current[0] newTime = (current[1]+1)%2 newPosition = currentPosition - 1 if newPosition >= 0 and not visit[newPosition][newTime]: visit[newPosition][newTime] = True q.append((newPosition, newTime)) newPosition = currentPosition + 1 if newPosition < 200001 and not visit[newPosition][newTime]: visit[newPosition][newTime] = True q.append((newPosition, newTime)) newPosition = currentPosition * 2 if newPosition < 200001 and not visit[newPosition][newTime]: visit[newPosition][newTime] = True q.append((newPosition, newTime)) time += 1
'코딩해 > 코테준비' 카테고리의 다른 글
[프로그래머스 Golang] 문자열 다루기 기본 (0) | 2021.03.25 |
---|---|
[프로그래머스] C++ 연습문제 최댓값과 최솟값 (0) | 2020.11.06 |
[프로그래머스] Python 키패드 누르기(카카오 인턴십) (0) | 2020.10.06 |
[프로그래머스] Python 두 개 뽑아서 더하기 (월간 코드 첼린지) (0) | 2020.10.03 |
[프로그래머스 Python] 올바른 괄호 (연습문제) (0) | 2020.10.03 |