본문 바로가기

Python

(67)
[프로그래머스] K번째 수 - python 풀이 본 게시물은 프로그래머스의 연습 문제 풀이입니다. 저작권은 (주) 그랩에게 있습니다 파이썬 코드 # K번째 수 def solution(array, commands): answer = [] # commands를 한 행씩 접근하여 슬라이싱하기 for i in range(len(commands)): # 주어진 조건에 맞게 슬라이싱 cut_array = array[commands[i][0] - 1:commands[i][1]] # 오름차순 정렬하기 cut_array.sort() # 주어진 조건의 원소 꺼내어 답안 리스트 넣기 answer.append(cut_array[commands[i][2] - 1]) return answer Comment 주어진 2차원 리스트인 commands를 행 별로 접근해서 조건에 맞게..
[프로그래머스] 체육복 - python 풀이 본 게시물은 프로그래머스의 연습 문제 풀이입니다. 저작권은 (주) 그랩에게 있습니다 파이썬 코드 # 체육복 def solution(n, lost, reserve): # 빌리기전 체육복을 가진 학생 수 = 총학생수 - 잃은 학생수 left = n - len(lost) # 빌린 학생수를 담을 변수 borrowed = 0 # 여분의 체육복이 있는 학생을 제외한 수업을 듣지 못하는 학생 real_lost = [] # 잃어버린 학생 리스트를 대상으로 입을 수 있는 체육복 사이즈가 reserve에 있는 것을 확인 # 잃어버린 학생 리스트 하나씩 접근 for i in range(len(lost)): # 확인 전에 여벌 체육복의 도난여부를 확인하고 도난당한 경우 빌려줄 수 없으므로 예외처리 # lost 리스트에서도 수..
[프로그래머스] 모의고사 - python 풀이 본 게시물은 프로그래머스의 연습 문제 풀이입니다. 저작권은 (주) 그랩에게 있습니다 파이썬 코드 # 모의고사 def solution(answers): # 가장 많은 문제를 맞힌 사람을 나타내는 리스트 answer = [] # 수포자 1 supo_1 = [1, 2, 3, 4, 5] # 수포자 2 supo_2 = [2, 1, 2, 3, 2, 4, 2, 5] # 수포자 3 supo_3 = [3, 3, 1, 1, 2, 2, 4, 4, 5, 5] # 각 수포자가 맞은 수를 기록하는 배열 cnt = [0, 0, 0] # 입력받은 답안을 토대로 각 수포자가 얼마나 맞았는지 탐색 for i in range(len(answers)): # 수포자 1은 5를 주기로 반복 if answers[i] == supo_1[i % 5..
[프로그래머스] 신규 아이디 추천 - python 풀이 본 게시물은 프로그래머스의 연습 문제 풀이입니다. 저작권은 (주) 그랩에게 있습니다 파이썬 코드 # 신규 아이디 추천 def solution(new_id): # 아이디를 조건에 맞게 변경하기 # 아이디에 허용되는 문자열들 is_able = ['-', '_', '.'] # 대문자를 소문자로 변환 new_id = new_id.lower() # 아이디의 길이 id_length = len(new_id) # 규칙에 맞는 아이디 available_id = [] # 한 글자씩 접근 for i in range(id_length): # 숫자거나 허용된 문자열인 경우에만 새 아이디에 넣기 if (new_id[i].isdigit() or new_id[i] in is_able or new_id[i].isalpha()): av..
[프로그래머스] 크레인 인형 뽑기 게임 - python 풀이 본 게시물은 프로그래머스의 연습 문제 풀이입니다. 저작권은 (주) 그랩에게 있습니다 파이썬 코드 # 크레인 인형뽑기 게임 def solution(board, moves): # 집은 인형을 넣을 배열 pick = [] # 답 answer = 0 # 주어진 moves 배열을 토대로 board를 체크하기 # x: 집을 인형의 위치 for x in moves: # board의 한 줄 씩 접근 # borad의 행 길이 board_row_length = len(board) # board의 행 번호 for i in range(board_row_length): # 해당 줄의 집을 위치에 인형이 없는 경우 if board[i][x - 1] != 0: # pick 배열에 인형을 넣기 pick.append(board[i][..
[항해99 1기] [Chapter2-1] 자료구조, 알고리즘 (1) (2021.3.5) Baekjoon Online Judge 백준 온라인 저지 사이트의 문제 풀이 10869 문제 링크 a, b = map(int, input().split()) print(a + b) print(a - b) print(a * b) print(int(a / b)) print(a % b) comment 고작 일주일 안 풀었다고 여기서 막히다니… 정수화를 하지 않아 오답처리가 되었었다. 2588 문제 링크 a = input() b = input() for i in range(-1, -4, -1): print(int(a) * int(b[i])) print(int(a) * int(b)) 2884 문제 링크 오답 # 하루의 시간은 24시간 # 24시간은 24 * 60 = 1440 분 # 자정을 기준으로 700분을 넘기..
[인프런 - 김태원] 파이썬 알고리즘 문제풀이 (코딩테스트 대비) (31)(2021.2.24) 본 내용은 해당 강의 토대로 작성 1. 플로이드 워샬 알고리즘 문제 해설 각 정점에서 각 정점으로의 최소 비용 2차원 리스트 다이나믹 프로그래밍 냅색 알고리즘 dis[ i ] [ j ]: i노드에서 j노드로 가는데 드는 최소 비용 i: 출발점 j: 도착점 i에서 j로 갈 때의 경우의 수 이 중에서 최소비용을 찾기 최솟값을 찾기 dis[ i ] [ j ] dis[ i ] [ k ] + dis[ k ] [ j ] k: 중간 경유지 , for문으로 접근할 것 비용이 제일 최소가 되는 순열로 이루어지게 된다. 문제 답안 if __name__ == "__main__": n, m = map(int, input().split()); # 정점, 간선 개수 dis =[[5000] * (n + 1) for _ in ran..
[스파르타코딩] 웹개발 종합반 항해 1기 4주차 (2)(2021.2.4 ~ 5) 본 내용은 스파르타코딩 웹개발 종합반 강의를 토대로 작성 모두의 책 리뷰 1. POST 연습(리뷰 저장) 클라이언트의 입력을 받아 저장하는 API 만들기 Create -> POST 1. 클라이언트와 서버 확인 요청 정보 : 요청 URL = /review, 요청방식 = POST 서버가 제공할 기능 : 클라이언트에게 정해진 메시지를 보낸다. 응답 데이터 : (JSON 형식) 'result' = 'success', 'msg' =' 리뷰가 성공적으로 작성되었습니다.' 서버 코드 - app.py @app.route('/review', methods=['POST']) def write_review(): return jsonify({'result': 'success', 'msg': '리뷰가 성공적으로 작성되었습니다...