본문 바로가기

PYTHON91

프로그래머스 Lv1 햄버거 만들기 (python) 햄버거 만들기 풀이 처음에 일단 부딪히는 방법으로 풀어서 아래처럼 풀었다. # 조리된 순서대로 상수의 앞에 아래서부터 위로 쌓임. # 순서에 맞게 햄버거를 완성시켜야함 # 햄버거는 아래서부터 빵-야채-고기-빵, 1-2-3-1. # 포장하는 동안 재료가 추가적으로 돌어오진 않음 def solution(ingredient): burger_num = 0 burger = [1,2,3,1] while len(ingredient) >= 4: for i in range(len(ingredient)-3): if ingredient[i:i+4] == burger: burger_num += 1 ingredient = ingredient[:i] + ingredient[i+4:] break else: break return .. 2024. 2. 14.
프로그래머스 Lv1 [PCCP 기출문제] 1번 / 붕대 감기 (python) [PCCP 기출문제] 1번 / 붕대 감기 풀이 처음 문제를 보고 나서 느낀 점은 이거 문제로 받았으면, 제 시간 안에 풀 수 있었을까? 였다. 문제를 읽는 것과 정리하는 시간도 필요했고, 그에 따른 고민도 해야 했기 때문이다. 다행히 LV1이어서 적당하게 이렇게 하면 요롷게 되겠지 하고 푸니 풀렸지만, 그 이상 레벨이었으면?? 흐음.. 일단 문제의 내용을 다시 정리하고, 그것을 토대로 작성을 했다. 시간은 계속 흐르고 시간에 대한 정의는 없었기에 for문 대신 while문으로 시간을 계속 흘려보냈다. 그리고 그 시신과 함께 공격 시간에 맞추어 공격이 이루어지는지를 확인하고, 공격이 없으면 체력을 회복하게 만들었다. while문이 끝나는 시점은 마지막 공격이 이루어졌을 때가 끝나는 것이기 때문에 공격 시점.. 2024. 2. 14.
프로그래머스 Lv2 튜플 (python) 튜플 풀이 보면서 진짜 이건 어떻게 풀지 하고 있다가, 보니, 뭘해도 결국 1개만 있는 것은 나와야했다. 이를 바탕으로 풀이를 해보려고 진행했다. 일단 문자열 형태로 되어있어서, 이것을 리스트 형태로 바꿔줄 필요가 있었기에 이를 조정했다. 1. 문자열을 리스트 형태로 변환 2. 생성된 리스트를 기반으로 리스트 안의 리스트의 길이를 기준으로 오름차순 정렬 3. for문을 돌면서 리스트 안의 리스트가 가진 요소를 answer에 기입하고, 이 때 이미 기입이 되지 않은 요소들만 계속 추가 4. 마지막으로 answer를 반환 # 1개짜리 2개짜리 3개짜리...에 들어있는 숫자 순으로 입력되어있음 # 이를 모두 리스트로 바꿔놓고, 해석하면 될 듯 # 우선 숫자의 길이만큼을 오름차순으로 리스트로 변환 def sol.. 2024. 2. 13.
프로그래머스 Lv1 공원 산책 (python) 공원 산책 풀이 문제가 길긴 했지만 몇 가지만 주의 하면 되는 문제이다. 결국은 if else문을 잘 쓸줄 아느냐 행렬을 사용할 줄 아느냐에 대한 문제이다. 각 기본 사항에 대해서 입력 시작 위치를 설정 시작 위치를 기반으로 행렬작동 행렬 작동간 로봇 강아지가 입력 거부 안하고 진행할 경우에만 로봇 강아지의 위치 조정 마지막 위치 반환 # 지나다니는 길을 'O', 장애물을 'X'로 나타낸 공원 # 로봇 강아지의 산책 # 입력 중에서 E 5 로 주어졌을 때, 이동 중 장애물을 만나거나 공원을 벗어난다면 이번 입력 수행 안함. def solution(park, routes): answer = 'NSWE' H = len(park) W = len(park[0]) d_dic = {"N":0,"S":1,"W":2,.. 2024. 2. 12.
프로그래머스 Lv1 성격 유형 검사하기 (python) 성격 유형 검사하기 풀이 문제가 길어서 잠깐 어,, 했지만 그래도 풀 수 있게다는 생각은 확실히 들었다. 그래서 아래처럼 풀었다. 1. 타입을 설정하는 리스트 생성 2. 해당 타입에 대한 점수를 기록한 리스트 생성 3. for 문을 통해 choices에서 점수를 기록 4. 심리 검사 완료 후 데이터 비교 분석하는 for문 생성 5. 4의 완료 후 값을 제출 # 나만의 카카오 유형 검사지 MBTI의 변종 # 타입 설정 # 동의 점수에 따른 유형 if문 작성 # 동점일 때는 사전적으로 더 앞선 것을 선택 # result에 넣을 수 있게, 바로바로 점수 계산 필요 types = ['R','T','C','F','J','M','A','N'] def solution(survey, choices): answer = .. 2024. 2. 11.
프로그래머스 Lv1 가장 많이 받은 선물 (python) 가장 많이 받은 선물 풀이 문제보고 어,,,, 하다가 문제대로 풀면 되겠지하고, 규칙을 정하고 풀었다. 1. 두 사람이 주고 받은 게 있을 때, 선물 수가 다른 경우 2. 두 사람이 주고 받은 게 있을 때, 선물 수가 같은 경우 3. 두 사람이 주고 받은 게 없을 때, 선물 수가 다른 경우 4. 두 사람이 주고 받은 게 없을 때, 선물 수가 같은 경우 이를 생각하고 아래 처럼 풀어봤다. for문과 if 문이 많아 오래 걸린 듯하다. # A, B # A가 B에게 5번, B가 A에게 3번 이면, A가 B에게 선물주기 # 2사람이 주고 받은 기록이 없으면 또는 같은 횟수로 서로에게 줬다면, 선물을 더 많이 줬던 사람이 받음 # 선물지수도 같으면 서로 안주고받음. # 1. 두사람이 서로 주고받은게 있고, 두사람.. 2024. 2. 10.