본문 바로가기

공부-코딩테스트72

파이썬 format함수 코딩테스트를 연습할 때 재귀호출을 하는 경우가 많다. 자신이 의도한 대로 데이터가 잘 전달되는지 확인하는데 유용한 함수 중 하나가 format함수이다. '{}'.format(데이터) 식으로 사용할 수 있다. 작은따옴표, 큰따옴표안에 {}를 적고 format에 {} 갯수만큼 전달하면 치환되는 형식이다. 예시 결과 {} 와 인수 순서대로 치환된다. 2022. 1. 5.
피로도 파이썬(프로그래머스) 문제 https://programmers.co.kr/learn/courses/30/lessons/87946 코딩테스트 연습 - 피로도 XX게임에는 피로도 시스템(0 이상의 정수로 표현합니다)이 있으며, 일정 피로도를 사용해서 던전을 탐험할 수 있습니다. 이때, 각 던전마다 탐험을 시작하기 위해 필요한 "최소 필요 피로도"와 던 programmers.co.kr 나의 코드 def solution(k, dungeons): return search(k,dungeons,0) def search(k,list_d,count): #print('피로도 : {} 탐색한 던전 수: {} 남은 던전: {}'.format(k,count,list_d)) count_list=[count] for i in range(len(list.. 2022. 1. 5.
삼각 달팽이-파이썬 (프로그래머스) 문제 설명은 아래 링크를 통해서 https://programmers.co.kr/learn/courses/30/lessons/68645 코딩테스트 연습 - 삼각 달팽이 5 [1,2,12,3,13,11,4,14,15,10,5,6,7,8,9] 6 [1,2,15,3,16,14,4,17,21,13,5,18,19,20,12,6,7,8,9,10,11] programmers.co.kr 나의 풀이 방법 빨->파->검 순으로 보면 6개->5개->4개->3개->2개->1개 식으로 방향이 돌아간다. 처음 시도 n=4일 때 필요한 숫자들은 [1,2,3,4, - - -,{n+(n-1)+ ----+1}] number_tmp리스트에 저장한다. 또한 처음 n개 원소를 묶고, 그다음 n-1개 원소를 묶고...... 마지막 1개를 묶을 .. 2021. 12. 30.
땅따먹기 파이썬 (프로그래머스) 문제 설명은 아래 링크를 통해서 https://programmers.co.kr/learn/courses/30/lessons/12913 코딩테스트 연습 - 땅따먹기 땅따먹기 게임을 하려고 합니다. 땅따먹기 게임의 땅(land)은 총 N행 4열로 이루어져 있고, 모든 칸에는 점수가 쓰여 있습니다. 1행부터 땅을 밟으며 한 행씩 내려올 때, 각 행의 4칸 중 한 칸만 밟 programmers.co.kr 풀이방법 n번째 행에 있는 4가지 점수들 입장에서 생각해보자 (15)점수가 선택될 경우는 1번행의 1,3,4번째 점수를 밟고 넘어온 경우다. 다른 점수들도 마찬가지로 이전 점수들 중에서 자신의 열을 제외한 나머지 점수들 중에서 가장 큰 점수를 가진 점수를 선택하면 자신이 선택된 경우의 수에서 가장 큰 점수를 얻.. 2021. 12. 27.
파이썬 dictionary 사용 파이썬의 dictionary는 key:value 형태로 저장하는 형태이다. dict={} 식으로 빈 dictionary를 생성할 수 있다. 사용1 : 고유값이 존재하고 시계열 처리가 필요한 상황 특정 고유값으로 정보를 저장할 필요가 있으며 처리순서에 영향을 받는 경우에 유용하게 쓰인다. dict[key]=value를 하면 dict에서 key값이 없으면 새롭게 추가하고, key값이 존재한다면 value값으로 새롭게 갱신한다. 예시 문제 https://programmers.co.kr/learn/courses/30/lessons/42888 코딩테스트 연습 - 오픈채팅방 오픈채팅방 카카오톡 오픈채팅방에서는 친구가 아닌 사람들과 대화를 할 수 있는데, 본래 닉네임이 아닌 가상의 닉네임을 사용하여 채팅방에 들어갈 .. 2021. 12. 26.
달팽이 배열 만들기 (재귀함수사용) 목표 : 대부분 한 번쯤은 봤을 달팽이 배열을 출력하는 함수를 코딩 코딩테스트를 볼 때 기본적으로 구현할 필요가 있는 부품으로 사용되는 것을 종종 보았다. 단순히 구현할 수 있었으나 막상 코딩테스트를 할 때 시간이 많이 걸린 경험이 있다. 시간 단축을 위해서 익숙해질 필요가 있다 생각하였다. 범용적으로 사용하기 위해 행, 열이 같을 필요가 없고, 시작값을 선택할 수 있는 달팽이 배열을 생성하는 함수를 코딩해 보았다. 행,열 값이 꼭 같을 필요가 없고, 1*1이나 1*6 사각형에도 적용할 수 있도록 코드하는 것이 목표. 1이상의 행,열 값과 시작하고자 하는 값을 input으로 받는다. import numpy as np def TMP(row,column,start): if row==1 or column==1.. 2021. 12. 26.