본문 바로가기

알고리즘

(4)
[프로그래머스] n^2 배열 자르기 1. 문제 정보 2. 손코딩 3. 코드 4. 어려웠던 부분 || 배운 것 5. 다른 사람의 풀이 1. 문제 정보 1) 출처: https://school.programmers.co.kr/learn/courses/30/lessons/87390 2. 손코딩 (아래와 같은 로직으로 풀었지만 효율성 테스트를 통과하지 못함) 1) 처음부터 right 인덱스까지 순회하면서 숫자들을 채워 놓는 식으로 처음에 구현 2) 배열의 길이를 n 으로 나눴을 때 나머지가 0 인지 아닌지를 먼저 기준으로 잡음 2-1-1) 배열의 길이를 n 으로 나눴을 때 나머지가 0 이면 ( row를 +1, column = 1, answer 에 넣을 숫자를 다시 세팅해줘야 한다 ) 2-1-2) num를 다시 세팅하기 위해 현재 row의 첫번째 숫..
[LeetCode] 스택 > 20. Valid Parentheses 1. 문제 정보 2. 손코딩 3. 어려웠던 부분 4. 코드 5. 다른 사람의 풀이 6. 어떤 부분이 / 스택/큐 로직과 연결되는지? 1. 문제 정보 1) 출처: https://leetcode.com/problems/valid-parentheses/ 2) 문제 설명: Given a string s containing just the characters '(', ')', '{', '}', '[' and ']', determine if the input string is valid. An input string is valid if: 1. Open brackets must be closed by the same type of brackets. 2. Open brackets must be closed in th..
[프로그래머스] 스택/큐 > 프린터 1. 문제 정보 2. 손코딩 3. 어려웠던 부분 4. 코드 5. 다른 사람의 풀이 6. 어떤 부분이 / 스택/큐 로직과 연결되는지? 1. 문제 정보 1) 출처: https://school.programmers.co.kr/learn/courses/30/lessons/42587 2) 문제 설명 일반적인 프린터는 인쇄 요청이 들어온 순서대로 인쇄합니다. 그렇기 때문에 중요한 문서가 나중에 인쇄될 수 있습니다. 이런 문제를 보완하기 위해 중요도가 높은 문서를 먼저 인쇄하는 프린터를 개발했습니다. 이 새롭게 개발한 프린터는 아래와 같은 방식으로 인쇄 작업을 수행합니다. 1. 인쇄 대기목록의 가장 앞에 있는 문서(J)를 대기목록에서 꺼냅니다. 2. 나머지 인쇄 대기목록에서 J보다 중요도가 높은 문서가 한 개라도 존..
[프로그래머스] 스택/큐 > 기능개발 문제 1. 문제 정보 2. 손코딩 3. 어려웠던 부분 4. 코드 5. 다른 사람의 풀이 6. 어떤 부분이 / 스택/큐 로직과 연결되는지? 1. 문제 정보 - 출처: 코딩테스트 연습 - 기능개발 | 프로그래머스 스쿨 (programmers.co.kr) - 문제 설명 프로그래머스 팀에서는 기능 개선 작업을 수행 중입니다. 각 기능은 진도가 100%일 때 서비스에 반영할 수 있습니다. 또, 각 기능의 개발속도는 모두 다르기 때문에 뒤에 있는 기능이 앞에 있는 기능보다 먼저 개발될 수 있고, 이때 뒤에 있는 기능은 앞에 있는 기능이 배포될 때 함께 배포됩니다. 먼저 배포되어야 하는 순서대로 작업의 진도가 적힌 정수 배열 progresses와 각 작업의 개발 속도가 적힌 정수 배열 speeds가 주어질 때 각 배포마다..