# programmers

9656개의 포스트
post-thumbnail

프로그래머스_삼총사

프로그래머스 Lv1 문제입니다. 실전에 대비하기 위해 30분 시간제한을 두고 풀었습니다. ># 문제 https://school.programmers.co.kr/learn/courses/30/lessons/131705 [나의 풀이] ⌛ 3분 소요 주어진 입력 리스트에서 3개씩 짝지어 합이 0인 케이스의 갯수를 구하는 문제입니다. 조합을 구할 수 있는 combinations 라이브러리를 통해 쉽게 구현할 수 있었습니다.🐮🐮🐮 [다른 사람의 풀이1] 3개씩 짝지어 모든 케이스를 확인하면 되므로 3중 for으로 구현할 수도 있었습니다.🐶🐶🐶 [다른 사람의 풀이2] 제가 풀어낸 방식과 같은 원리로 list comprehension을 통해 간결하게 표현한 풀이입니다. 감사합니다.

약 8시간 전
·
0개의 댓글
·
post-thumbnail

정렬 - K번째수

문제 문제 링크 풀이 commands를 반복문을 사용하여 원하는 길이 만큼 자르고 정렬하여 원하는 위치의 요소를 정답에 추가.

약 10시간 전
·
0개의 댓글
·
post-thumbnail

스택/큐 - 주식가격

문제 문제 링크 풀이 현재 요소와 다음 모든 요소를 비교하는 이중 for 문으로 문제 해결. 맨 마지막은 항상 0. 가격 유지는 최소 1초이다.

약 10시간 전
·
0개의 댓글
·
post-thumbnail

스택/큐 - 다리를 지나는 트럭

문제 문제 링크 풀이 이동 중인 트럭 큐, 이동 중인 트럭의 거리 큐를 이용. 이동 중인 트럭이 도착하면 도착 리스트에 추가. 도착한 트럭의 수가 전체 트럭과 동일하면 종료. 매 반복마다 이동 중인 트럭의 무게를 조사, 견딜 수 있는 무게보다 적으면 트럭 무게를 조사하여 이동 중인 리스트에 추가. 반복이 끝나면 시간 update.

약 13시간 전
·
0개의 댓글
·
post-thumbnail

스택/큐 - 프로세스

문제 문제 링크 풀이 프로세스 큐를 모두 실행 하여 실행 순서를 저장한 dictionary를 만듦.

약 14시간 전
·
0개의 댓글
·
post-thumbnail

스택/큐 - 기능개발

문제 문제 풀이 풀이 먼저 작업 별 걸리는 작업 일 수를 계산. 작업 별 걸리는 일 수를 순서대로 반복하여, 맨 처음에 시작한 작업보다 작업이 더 빨리 끝나면 작업 개수를 count up하고 더 늦개 끝나면 현재 까지 작업 개수를 정답에 추가. 그리고 작업 개수를 초기화하고 맨 처음 시작한 작업을 현재 작업으로 변경.

약 14시간 전
·
0개의 댓글
·
post-thumbnail

스택/큐 - 올바른 괄호

문제 문제 링크 풀이 스택에 문자열을 하나씩 넣고, 열고 닫힘이 성립되면 스택에서 pop을 두 번 실행. 마지막에 큐가 비어있을 때 문자열이 정상적인 것으로 판단.

약 14시간 전
·
0개의 댓글
·
post-thumbnail

스택/큐 - 같은 숫자는 싫어

문제 문제 링크 풀이 arr을 순서대로 반복하여, 정답 리스트에 추가. 정답 리스트의 마지막 요소가 현재 요소와 같지 않은 경우만 정답에 추가.

약 14시간 전
·
0개의 댓글
·
post-thumbnail

해시 - 베스트앨범

문제 문제 링크 풀이 3 개의 dictionary를 활용하여 문제 해결. 각 음악에 고유번호를 부여하고 플레이 횟수를 저장한 dict(playdict), 각 장르에 속한 음악의 고유 번호 리스트를 저장한 dict(genredict), 각 장르 별 속한 음악의 플레이 횟수를 모두 더한 값을 저장한 dict(sorteddict)를 활용. sorteddict를 정렬하여 가장 많이 플레이된 순서로 장르를 우선 정렬 한다. 이후 정렬된 장르 순서로 반복하여, genredict에서 장르에 속한 모든 음악의 고유 번호를 얻고, 고유 번호를 가지고 play

약 14시간 전
·
0개의 댓글
·
post-thumbnail

[프로그래머스] 같은 숫자는 싫어

문제 >배열 arr가 주어집니다. 배열 arr의 각 원소는 숫자 0부터 9까지로 이루어져 있습니다. 이때, 배열 arr에서 연속적으로 나타나는 숫자는 하나만 남기고 전부 제거하려고 합니다. 단, 제거된 후 남은 수들을 반환할 때는 배열 arr의 원소들의 순서를 유지해야 합니다. 예를 들면, arr = [1, 1, 3, 3, 0, 1, 1] 이면 [1, 3, 0, 1] 을 return 합니다. arr = [4, 4, 4, 3, 3] 이면 [4, 3] 을 return 합니다. 배열 arr에서 연속적으로 나타나는 숫자는 제거하고 남은 수들을 return 하는 solution 함수를 완성해 주세요. 제한조건 > phone_number는 길이 4 이상, 20이하인 문자열입니다. 입출력 예시 > --

어제
·
0개의 댓글
·
post-thumbnail

무작위로 K개의 수 뽑기

문제 설명 랜덤으로 서로 다른 k개의 수를 저장한 배열을 만드려고 합니다. 적절한 방법이 떠오르지 않기 때문에 일정한 범위 내에서 무작위로 수를 뽑은 후, 지금까지 나온적이 없는 수이면 배열 맨 뒤에 추가하는 방식으로 만들기로 합니다. 이미 어떤 수가 무작위로 주어질지 알고 있다고 가정하고, 실제 만들어질 길이 k의 배열을 예상해봅시다. 정수 배열 arr가 주어집니다. 문제에서의 무작위의 수는 arr에 저장된 순서대로 주어질 예정이라고 했을 때, 완성될 배열을 return 하는 solution 함수를 완성해 주세요. 단, 완성될 배열의 길이가 k보다 작으면 나머지 값을 전부 -1로 채워서 return 합니다. 제한사항 1 ≤ arr의 길이 ≤ 100,000 0 ≤ arr의 원소 ≤ 100,000 1 ≤ k ≤ 1,000 입출력 예 | arr | k | result | | - | - | - | | [0, 1, 1, 2,

어제
·
0개의 댓글
·
post-thumbnail

프로그래머스_크기가 작은 부분문자열

프로그래머스 Lv1 문제입니다. 실전에 대비하기 위해 30분 시간제한을 두고 풀었습니다. ># 문제 https://school.programmers.co.kr/learn/courses/30/lessons/147355 [나의 풀이] ⌛ 6분 소요 입력된 문자열(t)의 부분문자열(연속된 부분 문자열) 중 문자열(p)보다 작거나 같은 문자열의 갯수를 출력하는 문제입니다. 어렵지 않게 구현할 수 있었습니다.🐰🐰🐰 [다른 사람의 풀이1] 같은 원리의 풀이입니다. list comprehension을 활용하여 한줄로 간결히 구현한 방식입니다. 🐬🐬🐬 [다른 사람의 풀이2] 또 다른 방식으로는 부분문자열의 모든 케이스를 먼저 저장하고 p와 대소관계를 비교하는 방식이 있었습니다.🐱🐱🐱 감사합니다/

어제
·
0개의 댓글
·

프로그래머스_N개의 최소공배수

💻 문제 출처 : [프로그래머스_N개의 최소공배수] (https://school.programmers.co.kr/learn/courses/30/lessons/12953) 👉 내가 작성한 답 📌 접근 방식 첫 번째 수와 두 번째 수의 최소공배수를 구함 구한 최소공배수와 세 번째 수의 최소공배수를 구함 위 과정 반복 📌 문제 풀이 설명 int 변수 totalGcd를 선언하고 0으로 초기화 int 변수 lcm을 선언하고 arr 배열의 0번째 값으로 초기화 for문으로 1부터 arr의 길이 미만까지 1씩 증가하며 순회 gcd 메서드에 lcm과 arr[i]를 인수로 전달한 결과 값을 totalGcd에 대입 gcd 메서드 인자로 int 변수 a, b를 받음 만약 b가 0이면

어제
·
0개의 댓글
·
post-thumbnail

[프로그래머스] 문자열을 정수로 바꾸기

문제 문자열 s를 숫자로 변환한 결과를 반환하는 함수, solution을 완성하세요. 제한 조건 s의 길이는 1 이상 5이하입니다. s의 맨앞에는 부호(+, -)가 올 수 있습니다. s는 부호와 숫자로만 이루어져있습니다. s는 "0"으로 시작하지 않습니다. 입출력 예 예를들어 str이 "1234"이면 1234를 반환하고, "-1234"이면 -1234를 반환하면 됩니다. str은 부호(+,-)와 숫자로만 구성되어 있고, 잘못된 값이 입력되는 경우는 없습니다. 생각 정수가 음수일때는 첫 문자가 부호이고, 양수일 때는 첫 문자가 숫자이니 경우를 나눠서 풀어야겠다 코드 다른 사람의 풀이 내가 푼 풀이보다 더 간단하게 풀 수 있을까? 이정도면 충분히

어제
·
0개의 댓글
·
post-thumbnail

해시 - 의상

문제 문제 링크 풀이 아무 것도 입지 않은 경우(None)를 포함한 옷 종류의 조합의 수를 계산. 계산된 수에서 모두 None인 case 하나를 뺀다.

어제
·
0개의 댓글
·
post-thumbnail

해시 - 전화번호 목록

문제 문제 링크 풀이 길이가 짧은 번호가 접두사가 될 수 있다는 점을 활용. list를 정렬하여 앞에서부터 차례대로 다음 번호와 조사.

어제
·
0개의 댓글
·
post-thumbnail

해시 - 완주하지 못한 선수

문제 문제 링크 풀이 zip 을 이용하여 dictionary 형태로 iteration. 더 짧은 list의 경우 모든 iter 후 맨 앞 요소가 다시 반복된다는 점을 활용. 두 list를 정렬하여 kev, value가 다른 경우 participant의 이름을 return. 반복문이 return 없이 끝난 경우, 동명이인으로 마무리 된 것을 의미. 이 경우 정렬된 participants의 마지막 요소를 return

어제
·
0개의 댓글
·
post-thumbnail

해시 - 폰켓몬

문제 문제 링크 풀이 포켓몬의 종류가 선택하려는 수 보다 많은 경우 서로 다른 종류의 포켓몬을 하나 씩 선택하면 가장 많은 종류의 포켓몬을 선택 가능. 그러나 선택하려는 수 보다 포켓몬의 종류가 더 작으면 최대 포켓몬 종류의 수 만큼 선택이 가능하다.

어제
·
0개의 댓글
·
post-thumbnail

[프로그래머스/C#] 가장 가까운 같은 글자

출처는 프로그래머스 입니다. https://school.programmers.co.kr/learn/courses/30/lessons/142086 🐧 가장 가까운 같은 글자 문제 설명 문자열 s가 주어졌을 때, s의 각 위치마다 자신보다 앞에 나왔으면서, 자신과 가장 가까운 곳에 있는 같은 글자가 어디 있는지 알고 싶습니다. 예를 들어, s="banana"라고 할 때, 각 글자들을 왼쪽부터 오른쪽으로 읽어 나가면서 다음과 같이 진행할 수 있습니다. b는 처음 나왔기 때문에 자신의 앞에 같은 글자가 없습니다. 이는 -1로 표현합니다. a는 처음 나왔기 때문에 자신의 앞에 같은 글자가 없습니다. 이는 -1로 표현합니다. n은 처음 나왔기 때문에 자신의 앞에 같은 글자가 없습니다. 이는 -1로 표현합니다. a는 자신보다 두 칸 앞에 a가 있습니다. 이는 2로 표현합니다. n도 자신보다 두 칸 앞에 n이 있습니다. 이는 2로 표현합니다. a는 자신보다 두 칸, 네 칸

2일 전
·
0개의 댓글
·
post-thumbnail

[프로그래머스] 자연수 뒤집어 배열로 만들기

문제 자연수 n을 뒤집어 각 자리 숫자를 원소로 가지는 배열 형태로 리턴해주세요. 예를들어 n이 12345이면 [5,4,3,2,1]을 리턴합니다. 제한 조건 n은 10,000,000,000이하인 자연수입니다. 입출력 예 | n | return | | ----------------- | ----------- | | 12345 | [5,4,3,2,1] | 생각 문자로 바꾼 뒤 split으로 쪼개고, 루프를 거꾸로 돌면서 return 하자 코드 다른 사람의 풀이 문제를 푼 방식은 유사하나, reverse()를 사용해서 string을 뒤집은 것이 인상 깊었다. 🤓 다만 reverse() 메서드는 String에는 적용할 수

2일 전
·
0개의 댓글
·