본문 바로가기

python

(24)
99클럽 - 뒤에 있는 큰 수 찾기 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 아이디어 문제 자체는 이해하기 어렵지 않다. 바로 직관적으로 떠오르는 아이디어를 적용한 코드는 다음과 같다. def solution(numbers): answer = [] while numbers: target = numbers.pop(0) answer.append(next((val for val in numbers if val > target), -1)) return answer 기본 입출력은 통과했지만 테스트케이스에서는 대다수가 빨간불을 받는다. 4 ≤ numbers의 길이 ≤ 1,000,000 1 ≤ n..
99클럽 - 기능개발, 대충 만든 자판 기능개발 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 아이디어 풀이 초반에는 남은 일수의 규칙성을 가지고 풀이를 시도했었다. 제시된 보기와 간단한 데이터 조작으로 규칙성이 보였기 때문인데 코테는 항상 보기만 만족해서는 답이 없다. 이후에는 예전에 풀었던 SK의 문제 중 하나인 트랙데이 문제가 생각이 나서 데이터를 과감히 음수로 보내버려 기한이 얼마나 지났는지를 하나씩 체크하는 것으로 전략을 바꿨다. 이를테면 위와 같은 방식이다. 어차피 앞의 작업이 완료되지 못하면 뒤의 작업을 먼저 내보낼 수 없으므로 가장 앞의 작업이 0 이하로 변하는 순간에 뒤완료된 ..
99클럽 - 이진 변환 반복하기 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 아이디어 프로젝트들을 진행하면서 생긴 변화는 '내장함수'의 활용이다. 직접 구현하는 것보다 덜 수고스럽고, 실제 구동 속도도 빠르다는 것이 장점이다. (아는 것이 힘이라는 거지...) 2진수와 10진수 간의 변환에는 다음의 내장 함수를 사용하면 간단하다. bin() Built-in Functions The Python interpreter has a number of functions and types built into it that are always available. They are listed her..
쌩뚱맞은 'SyntaxError: invalid character in identifier' 해결하기 서론 최근 친구들과 함께 알고리즘 공부를 위해 파이썬을 복습하고 있다. 서로 작성한 코드를 채팅을 통해 주고받는데 유독 한 녀석의 코드만 문제가 생겼다. 본론 SyntaxError: invalid character in identifier 위와 같은 이름의 에러로 문제가 없는 코드지만 문법 오류라며 발광한다. 조금 특이했던 점은 위와 같이 같은 문장을 다시 작성하면 에러가 사라진다는 점이다. 위와 같은 문제는 코드를 복사, 붙여넣기 하다 보면 자주 발생하는 문제로, 육안으로는 문제가 없어 보이지만 내부적으로는 다른 문자가 사용된 경우 발생한다. 주로 발생하는 부분은 다음과 같다. 코드 내의 공백 (Tab, Space) '.'와 ',' ';'와 ';' '-'와 '—' '''와 '`' 따라서 위의 문자들을 ..