https://programmers.co.kr/learn/courses/30/lessons/43163 코딩테스트 연습 - 단어 변환 두 개의 단어 begin, target과 단어의 집합 words가 있습니다. 아래와 같은 규칙을 이용하여 begin에서 target으로 변환하는 가장 짧은 변환 과정을 찾으려고 합니다. 1. 한 번에 한 개의 알파벳만 바꿀 수 programmers.co.kr ⊙ 문제 ⊙ 제한사항 ⊙ 입출력 예 ⊙ 입출력 예 설명 ⊙ 문제 접근 과정 방문 여부와 단어 차이로 bfs를 돌려주었다. 먼저 queue에 시작 단어를 넣는다. 그리고 그 단어가 words안에 없다면 바로 0을 리턴해준다. 그렇지만 단어가 words 안에 있다면 words를 탐색하여 단어가 하나만 다르고 방문한 적 없는..
https://programmers.co.kr/learn/courses/30/lessons/86491 코딩테스트 연습 - 8주차_최소직사각형 [[10, 7], [12, 3], [8, 15], [14, 7], [5, 15]] 120 [[14, 4], [19, 6], [6, 16], [18, 7], [7, 11]] 133 programmers.co.kr ⊙ 문제 ⊙ 제한사항 ⊙ 입출력 예 ⊙ 입출력 예 설명 ⊙ 문제 접근 과정 리스트 속의 리스트 값들을 먼저 정렬해준다. 왜냐하면 가로랑 세로는 바꿔 들면 바꿀 수 있기에 크기로 정렬해준다. 그리고 그 값들을 하나씩, 두개의 배열에 넣어준다. 마지막으로 그 두 개의 배열중 가장 큰 두 개의 값을 곱해주면 정답이 나온다. ⊙ 문제 풀이 def solution(s..
https://programmers.co.kr/learn/courses/30/lessons/42586# 코딩테스트 연습 - 기능개발 프로그래머스 팀에서는 기능 개선 작업을 수행 중입니다. 각 기능은 진도가 100%일 때 서비스에 반영할 수 있습니다. 또, 각 기능의 개발속도는 모두 다르기 때문에 뒤에 있는 기능이 앞에 있는 programmers.co.kr ⊙ 문제 ⊙ 제한사항 ⊙ 입출력 예 ⊙ 입출력 예 설명 ⊙ 문제 접근 과정 먼저 각 프로세스마다 며칠이 걸리는지 계산을 해줘야 한다. 그리고 계산한 결과를 days라는 배열을 만들어 넣어줬다. 넣어주고 나면 첫 번째 예제의 경우에 days는 [7,3,9]가 들어간다. 그다음엔 첫 번째 값을 빼서 스택에 넣어주고 그 값과 days에 있는 값들을 비교한다...
https://programmers.co.kr/learn/courses/30/lessons/42587 코딩테스트 연습 - 프린터 일반적인 프린터는 인쇄 요청이 들어온 순서대로 인쇄합니다. 그렇기 때문에 중요한 문서가 나중에 인쇄될 수 있습니다. 이런 문제를 보완하기 위해 중요도가 높은 문서를 먼저 인쇄하는 프린 programmers.co.kr ⊙ 문제 ⊙ 제한사항 ⊙ 입출력 예 ⊙ 입출력 예 설명 ⊙ 문제 접근 과정 2차원 배열로 만들어줬다. 같은 우선순위일 때, 구별하기 위해서이다. 2차원 배열로 만들어줘서 2번째 값을 location에 해당하는 값, 다시 말해 내가 알고자 하는 인쇄물을 체킹 한다. 그리고 deque를 사용하여 계속해서 돌려줬다. 우선순위에 밀리면 뒤로 밀어내고, 우선순위라면 내가 찾..
https://www.acmicpc.net/problem/1202 1202번: 보석 도둑 첫째 줄에 N과 K가 주어진다. (1 ≤ N, K ≤ 300,000) 다음 N개 줄에는 각 보석의 정보 Mi와 Vi가 주어진다. (0 ≤ Mi, Vi ≤ 1,000,000) 다음 K개 줄에는 가방에 담을 수 있는 최대 무게 Ci가 주어진다. (1 ≤ Ci www.acmicpc.net ⊙ 문제 ⊙ 입력 ⊙ 출력 ⊙ 예제 입출력 ⊙ 알고리즘 분류 자료 구조 그리디 알고리즘 정렬 우선순위 큐 ⊙ 문제 접근 과정 1️⃣ 보석 리스트 gem에 (무게, 가치)를 담아준다. 2️⃣ bag 값을 담아주고 정렬해준다. 3️⃣ 임시 배열인 temp를 만들어 허용 가능한 보석을 계속 넣어주고 그중 값어치 나가는 보석을 pop 4️⃣ p..
https://programmers.co.kr/learn/courses/30/lessons/43165 코딩테스트 연습 - 타겟 넘버 n개의 음이 아닌 정수가 있습니다. 이 수를 적절히 더하거나 빼서 타겟 넘버를 만들려고 합니다. 예를 들어 [1, 1, 1, 1, 1]로 숫자 3을 만들려면 다음 다섯 방법을 쓸 수 있습니다. -1+1+1+1+1 = 3 +1-1+1+1+ programmers.co.kr ⊙ 문제 ⊙ 제한사항 ⊙ 입출력 예 ⊙ 문제 접근 과정 그냥 무지성으로 +와 -를 전부 배열에 다 넣고 target의 값이 몇 개인지 count() 함수를 사용하여 출력해주면 된다. ⊙ 문제 풀이 def solution(numbers, target): tree = [0] for num in numbers: s..
https://programmers.co.kr/learn/courses/30/lessons/86048 코딩테스트 연습 - 7주차 사회적 거리두기를 위해 회의실에 출입할 때 명부에 이름을 적어야 합니다. 입실과 퇴실이 동시에 이뤄지는 경우는 없으며, 입실 시각과 퇴실 시각은 따로 기록하지 않습니다. 오늘 회의실에는 programmers.co.kr ⊙ 문제 ⊙ 제한사항 ⊙ 입출력 예 ⊙ 문제 접근 과정 리스트를 먼저 덱으로 변경해줬다. 그다음 스택을 만들어주어 스택에 값이 없다면 enter에서 맨 앞에 값을 빼온다. 그리고 leave 순서가 되기 전까지 enter의 맨 앞의 값을 빼와 stack에 계속 넣어준다. 그러다가 스택에 leave값이 있다면 제거해주고 stack에 값들을 count 해준다. 마지막으..
https://www.acmicpc.net/problem/14676 14676번: 영우는 사기꾼? 프로그램의 입력은 표준 입력으로 받는다. 입력의 첫 줄에는 건물 종류의 개수 N, 건물 사이 관계의 개수 M, 영우의 게임 정보의 개수 K가 주어진다.(1 ≤ N, M, K ≤ 100,000) 다음 줄부터 M줄에 걸쳐 www.acmicpc.net ⊙ 문제 ⊙ 입력 ⊙ 출력 ⊙ 예제 입출력 ⊙ 알고리즘 분류 구현 그래프 이론 위상 정렬 ⊙ 문제 접근 과정 1️⃣ graph[i].append(j), indegree[j]+=1 m만큼 반복 2️⃣ 건물을 K번 짓거나 파괴 3️⃣ 1은 건설, 2는 파괴 1일 시, 선행 건물이 있는지 판별 2일 시, 건물이 지어졌는지 확인 ⊙ 문제 풀이 import sys N, M,..
https://programmers.co.kr/learn/courses/30/lessons/85002 코딩테스트 연습 - 6주차_복서 정렬하기 복서 선수들의 몸무게 weights와, 복서 선수들의 전적을 나타내는 head2head가 매개변수로 주어집니다. 복서 선수들의 번호를 다음과 같은 순서로 정렬한 후 return 하도록 solution 함수를 완성해주세요 programmers.co.kr ⊙ 문제 ⊙ 제한사항 ⊙ 입출력 예 ⊙ 입출력 예 설명 ⊙ 문제 접근 과정 1️⃣ info란 배열을 먼저 만들어줬다. 2️⃣ info 배열 안에 인자를 [선수 번호, 몸무게, 승률, 나보다 무거운 복서 이긴 횟수]로 가져갔다. 3️⃣ lamda를 활용하여 승률 -> 나보다 무거운 복서 이긴 횟수 -> 몸무게 -> 선..
https://programmers.co.kr/learn/courses/30/lessons/42862 코딩테스트 연습 - 체육복 점심시간에 도둑이 들어, 일부 학생이 체육복을 도난당했습니다. 다행히 여벌 체육복이 있는 학생이 이들에게 체육복을 빌려주려 합니다. 학생들의 번호는 체격 순으로 매겨져 있어, 바로 앞번 programmers.co.kr ⊙ 문제 ⊙ 제한사항 ⊙ 입출력 예 ⊙ 입출력 예 설명 ⊙ 문제 접근 과정 문제 조건을 잘 보자 유의해야 할 점이 있다. 1️⃣ 체육복을 잃어버린 학생 중 여벌이 없는 학생 2️⃣ 체육복 여벌이 있는 학생 중 빌려줄 수 있는 학생(여벌 체육복이 있어도 도난당할 수 있기 때문) 번호에 대한조건을 주석으로 달아놨다. (#1, #2) 그리고 왼쪽(i-1)부터 for문과..
- Total
- Today
- Yesterday
- Web
- 문자열
- JS
- 운영체제
- 우종정
- 쉽게배우는
- 정렬
- 알고리즘
- 쉽게 배우는 자바 프로그래밍
- 프로그래머스
- Python
- 자바
- 구현
- BFS
- 백준
- 자바스크립트
- OS
- CPP
- 그리디
- java
- 해답
- 파이썬
- 정답
- C++
- 답
- py
- 연습문제
- 정리
- 쉽게배우는자바프로그래밍
- 풀이
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |