본문 바로가기

프로그래머스48

[프로그래머스] 파이썬 - 전화번호 목록 https://school.programmers.co.kr/learn/courses/30/lessons/42577 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr Level 2. 전화번호 목록 접근 방식 1. phone_book 원소를 정렬한다. 2. phone_book-1 길이만큼 반복문을 돌면서, 문자열 슬라이스를 이용하여 현재 인덱스와 그 다음 인덱스의 문자열 접두사가 일치하는지 확인한다. 1. 처음 코드 def solution(phone_book) : for i in phone_book : count = 0 for j in range(len(phon.. 2023. 7. 1.
[프로그래머스] 파이썬 - 가장 큰 수 https://school.programmers.co.kr/learn/courses/30/lessons/42746?language=python 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr Level 2. 가장 큰 수 1. 시행착오 import itertools def solution(numbers): answer = '' printList = list(itertools.permutations(numbers, len(numbers))) arr = [] for i in range(len(printList)) : tmp = '' for j in range(l.. 2023. 6. 27.
[프로그래머스] 파이썬 - K번째 수 https://school.programmers.co.kr/learn/courses/30/lessons/42748?language=python 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr Level 1. K번째 수 def solution(array, commands): answer = [] for i in range(len(commands)): a,b = commands[i][0]-1, commands[i][1] temp = array[a:b] temp.sort() c = commands[i][2]-1 answer.append(temp[c]) retur.. 2023. 6. 26.
[백준] 파이썬 - 백준 2667번 : 단지번호붙이기 https://www.acmicpc.net/problem/2667 2667번: 단지번호붙이기 과 같이 정사각형 모양의 지도가 있다. 1은 집이 있는 곳을, 0은 집이 없는 곳을 나타낸다. 철수는 이 지도를 가지고 연결된 집의 모임인 단지를 정의하고, 단지에 번호를 붙이려 한다. 여 www.acmicpc.net 백준 2667번 : 단지번호붙이기 # -*- coding: utf-8 -*- import sys sys.setrecursionlimit(3000) n = int(input()) res = [] graph = [] dx = [0,0,1,-1] dy = [1,-1,0,0] for i in range(n) : graph.append(list(map(int, input()))) def dfs(x,y) : .. 2023. 6. 20.
[백준] 파이썬 - 10451번 : 순열 사이클 https://www.acmicpc.net/problem/10451 10451번: 순열 사이클 1부터 N까지 정수 N개로 이루어진 순열을 나타내는 방법은 여러 가지가 있다. 예를 들어, 8개의 수로 이루어진 순열 (3, 2, 7, 8, 1, 4, 5, 6)을 배열을 이용해 표현하면 \(\begin{pmatrix} 1 & 2 &3&4&5&6&7&8 \\ 3 www.acmicpc.net 백준 10451번 : 순열 사이클 import sys sys.setrecursionlimit(2000) #최대 재귀를 늘려줘야 런타임 에러를 피할 수 있다 t = int(input()) def dfs(num) : nextNum = graph[num] #방문한 적 없으면 if visited[nextNum] == 0 : visi.. 2023. 6. 10.
[프로그래머스] Java - 메뉴 리뉴얼 https://school.programmers.co.kr/learn/courses/30/lessons/72411 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr Level 2. 메뉴 리뉴얼 2021 KAKAO BLIND RECRUITMENT 접근 방식 1. 모든 손님의 메뉴로 나올 수 있는 조합을 map에 저장한다. (메뉴 조합 : key, 해당 조합이 나온 횟수: value) 2. map을 value를 기준으로 정렬한다. 3. course 길이만큼 반복하면서, 최대로 주문된 메뉴를 answer에 저장한다. 코드 import java.util.*; imp.. 2023. 5. 24.