본문 바로가기

분류 전체보기

(21)
실패율(2019 kakao blind recruitment) 파이썬 문제 설명 실패율 슈퍼 게임 개발자 오렐리는 큰 고민에 빠졌다. 그녀가 만든 프랜즈 오천성이 대성공을 거뒀지만, 요즘 신규 사용자의 수가 급감한 것이다. 원인은 신규 사용자와 기존 사용자 사이에 스테이지 차이가 너무 큰 것이 문제였다. 이 문제를 어떻게 할까 고민 한 그녀는 동적으로 게임 시간을 늘려서 난이도를 조절하기로 했다. 역시 슈퍼 개발자라 대부분의 로직은 쉽게 구현했지만, 실패율을 구하는 부분에서 위기에 빠지고 말았다. 오렐리를 위해 실패율을 구하는 코드를 완성하라. 실패율은 다음과 같이 정의한다. 스테이지에 도달했으나 아직 클리어하지 못한 플레이어의 수 / 스테이지에 도달한 플레이어 수 전체 스테이지의 개수 N, 게임을 이용하는 사용자가 현재 멈춰있는 스테이지의 번호가 담긴 배열 stages가..
모의고사(프로그래머스 코딩테스트 연습) 파이썬 #1차 시도 def solution(answers): answer = [] cnt = 0 user_1 = [1,2,3,4,5] user_2 = [2,1,2,3,2,4,2,5] user_3 = [3,3,1,1,2,2,4,4,5,5] users = [user_1,user_2,user_3] for idx, user in enumerate(users): while len(answers) > len(user): user + user for i in range(len(answers)): if user[i]==answers[i]: user[i] = 0 if not answer or cnt
완주하지 못한 선수(프로그래머스 코딩테스트 연습) 파이썬 #나의 풀이 # 1차 시도 def solution(participant, completion): answer = '' participant.sort() completion.sort() for i in range(len(participant)): if i == len(participant)-1: answer = participant[i] break else: if participant[i] != completion[i]: answer = participant[i] break return answer 답에 1명만 완주를 하지 못했다고 써있었기 때문에 가능했던 코드가 아니었나 싶다. # 다른사람들의 풀이1 # collections 모듈을 이용한 풀이 import collections def solution(p..
파일명 정렬(카카오 신입 공채 3차 코딩 테스트) 파이썬 문제3. 파일명 정렬 세 차례의 코딩 테스트와 두 차례의 면접이라는 기나긴 블라인드 공채를 무사히 통과해 카카오에 입사한 무지는 파일 저장소 서버 관리를 맡게 되었다. 저장소 서버에는 프로그램의 과거 버전을 모두 담고 있어, 이름 순으로 정렬된 파일 목록은 보기가 불편했다. 파일을 이름 순으로 정렬하면 나중에 만들어진 ver-10.zip이 ver-9.zip보다 먼저 표시되기 때문이다. 버전 번호 외에도 숫자가 포함된 파일 목록은 여러 면에서 관리하기 불편했다. 예컨대 파일 목록이 [“img12.png”, “img10.png”, “img2.png”, “img1.png”]일 경우, 일반적인 정렬은 [“img1.png”, “img10.png”, “img12.png”, “img2.png”] 순이 되지만, 숫자 ..
[Python]파이썬 조건문(if문) 기본 예제 및 비교 연산자 이번 포스팅은 코딩에서 빠질 수 없는 조건문에 대한 포스팅이다. 알고리즘이나 비즈니스 로직을 설계할 때 조건에 따라 코드를 분기시켜야 할 경우에 많이 사용되기 때문에 기본부터 탄탄히 알아둘 필요가 있다. 1.비교연산자 조건문을 작성하기 위해서는 파이썬에서 사용되는 비교 연산자를 알아둬야 할 필요가 있다. 아래는 비교연산자를 나열한 목록이다. 기호 설명 예 결과 왼쪽의 값이 오른쪽 값보다 크면 True, 그렇지 않으면 False 1 > 2 False 2 False == 양쪽의 값이 서로 같으면 True, 그렇지 않으면 False 1 == 2 False != 양쪽의 값이 서로 다르면 True, 그렇지 않으면 False 1 != 2 True 2. if #if문 기본형태 if [조건] : [실행할구문] if 문..
[Python]파이썬 반복문(for문) 기본 예제 반복문은 동일한 문장을 반복함으로써 코드의 양을 줄이고 코드의 흐름을 파악하기 쉬워진다는 장점이 있다. 파이썬은 두 가지 종류의 반복문이 있는데, 하나는 for, 다른 하나는 while이다. 똑같은 반복문이지만 보통 횟수가 정해졌을 때는 for를, 조건이 정해졌을 때는 while을 사용한다. 이번 포스팅에선 두 가지 반복문 중 for에 대해 다뤄볼 예정이다. 1.for문 기본 형태 일단 for문의 기본형부터 알아보자. for~in 뒤에 콜론(:)이 붙는다는점에 유의하자. #for문 기본형태 for [변수명] in [반복 범위]: [실행할명령어] 2. 리스트를 활용한 for문 #리스트를 활용한 for문 weeks = ['월','화','수','목','금','토','일'] for week in weeks: p..
[Python]파이썬 리스트 값 추가/삭제/조회/정렬 기본 이번 포스팅은 리스트에 대한 내용이다. 많은 수의 값을 다뤄야 할 때, 각각의 변수에 저장하는 것보다 한꺼번에 모아서 관리하는 편이 더욱 간편하고 효율적으로 관리가 가능한데 이럴때 리스트를 사용하면 편리하다. 리스트 생성, 추가, 삭제, 조회등을 알아보자. 1.리스트 생성 #리스트 생성 list = [] print(list) list = [1,2,3] print(list) list = ['a','b','c'] print(list) 변수 = [값1,값2,...] 변수안에 대괄호[]를 사용해서 리스트를 정의할 수 있다. 2.리스트 조회 #리스트 생성 list = [1,2,3,4,5] #리스트 전체조회 print(list) #[1,2,3,4,5] #리스트 선택조회(인덱싱) print(list[2]) #3 pr..
[Python]파이썬 연산 기능(+,-,*,/ 등) 이번 포스팅은 파이썬의 연산기능에 대해 정리해 보았다. 생각보다 간단하면서도 잘 몰랐던 연산자와 의외의 기능도 있어서 한꺼번에 정리한다. 1.사칙연산(+, -, *, /) # 덧셈(1 + 2 = 3) print(1 + 2) # 뺄셈(3 - 2 = 1) print(3 - 2) # 곱셈(2 * 5 = 10) print(2 * 5) # 나눗셈(10 / 5 = 2.0) print(10 / 5) 가장 기본적인 사칙연산 이다. + : 더하기 - : 빼기 * : 곱하기 / : 나누기(실수) 주의할 점은 파이썬에서 나눗셈(/)의 결과는 정수가 아닌 실수라는 것 정도만 알면 될 것 같다. 2.제곱,몫,나머지(**, //, %) #제곱연산(6 ** 2 = 36) print(6 ** 2) #몫 가져오기(10 // 3 = 3..