본문 바로가기

Algorithm42

[프로그래머스] 멀쩡한 사각형 (Level 2) programmers.co.kr/learn/courses/30/lessons/62048 코딩테스트 연습 - 멀쩡한 사각형 가로 길이가 Wcm, 세로 길이가 Hcm인 직사각형 종이가 있습니다. 종이에는 가로, 세로 방향과 평행하게 격자 형태로 선이 그어져 있으며, 모든 격자칸은 1cm x 1cm 크기입니다. 이 종이를 격자 선을 programmers.co.kr 문제 가로 길이 W, 세로 길이 H가 주어지는데, 대각선 방향으로 잘랐을 때, 사용할 수 있는 정사각형 개수를 구하는 문제이다 (위 링크를 통해 그림참고) 해결 1차 함수로 풀었다 직사각형을 대각선으로 그으면, y = (h / w) * x 방정식이 만들어진다 대각선이 있으면 카운트할 수 없다 x를 0부터 대입했을 때, y까지만 사용할 수 있는 정사각.. 2020. 11. 10.
[BAEKJOON(백준)] 15591. MooTube (Silver) www.acmicpc.net/problem/15591 15591번: MooTube (Silver) 농부 존은 1번 동영상과 2번 동영상이 USADO 3을 가지고, 2번 동영상과 3번 동영상이 USADO 2를 가지고, 2번 동영상과 4번 동영상이 USADO 4를 가진다고 했다. 이것에 기반해서 1번 동영상과 3번 동영상의 www.acmicpc.net 문제 노드와 엣지가 주어진다 엣지에는 가중치가 있다 모든 동영상 사이에는 서로 얼마나 가까운지를 측정하는 단위인 'USADO' 값을 가진다 그리고 그 값이 주어진 K보다 크면 추천해줄 수 있다 (주어지지 않은 USADO 구하는 방법은 위 문제 링크를 통해 확인할 수 있다 - 문제가 길고 복잡해 생략한다) 예를 들어 k=1, start=2가 주어지면, 2번 동영.. 2020. 11. 10.
[Leetcode(릿코드)] 969. Pancake Sorting (Medium) leetcode.com/problems/pancake-sorting/ Pancake Sorting - LeetCode Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview. leetcode.com 문제 정렬되지 않은 배열 arr[]이 주어진다 그리고 그 배열을 1~arr.length-1개를 골라서 뒤집을 수 있다 뒤집기를 반복하여 배열을 순차적으로 정렬하는 문제이다 예를들어 arr[] = {3,2,4,1}이 주어지면, 1. 먼저 앞에꺼 3개를 뒤집는다 {3,2,4} -> {4,2,3}, 그러면 {4,2,3,1.. 2020. 11. 8.
[Leetcode(릿코드)] 20. Valid Parentheses (Easy) leetcode.com/problems/valid-parentheses/ Valid Parentheses - LeetCode Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview. leetcode.com 문제 괄호가 주어진다 1. 같은 타입의 괄호로 닫혀야만 한다 2. 올바른 순서로 닫혀야만 한다 예를 들면, 아래와 같다 Example 1: Input: s = "()" Output: true Example 2: Input: s = "()[]{}" Output: true Example 3: Input: s = .. 2020. 11. 7.
[Leetcode(릿코드)] 1. Two Sum (Easy) leetcode.com/problems/two-sum/ Two Sum - LeetCode Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview. leetcode.com 문제 배열과 타겟이 주어진다 배열의 2개 요소의 합이 타겟과 같으면, 그 요소들의 인덱스를 출력하는 문제이다 해결 배열을 한번 돌면서 target에서 해당 요소를 뺴고 s에 저장한다 그리고 배열의 현재 인덱스 다음부터 한번 더 돌면서 s랑 같으면 결과에 넣어서 출력한다 public static int[] twoSum(int[] nums, int.. 2020. 11. 7.
[프로그래머스] 스킬트리 (Level 2) programmers.co.kr/learn/courses/30/lessons/49993 코딩테스트 연습 - 스킬트리 programmers.co.kr 문제 스킬순서와 배워야하는 스킬트리가 주어진다 예를 들어, skill : CBD skill_trees : ["BACDE", "CBADF", "AECB", "BDA"] 이면, 스킬을 배울 때, 꼭 C, B, D 순서로 배워야만 한다 BACDE: B 스킬을 배우기 전에 C 스킬을 먼저 배워야 합니다. 불가능한 스킬트립니다. CBADF: 가능한 스킬트리입니다. AECB: 가능한 스킬트리입니다. BDA: B 스킬을 배우기 전에 C 스킬을 먼저 배워야 합니다. 불가능한 스킬트리입니다. 그래서 스킬트리 중 총 2개를 배울 수 있다 자세한 문제는 위 링크를 통해 확인할 .. 2020. 11. 7.
[Leetcode(릿코드)] 454. 4SUM 2 (Medium) leetcode.com/problems/4sum-ii/ 4Sum II - LeetCode Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview. leetcode.com 문제 배열 4개가 주어진다 각 배열의 요소에서 1개씩 뽑아서 모두 더한다 그리고 0이 나오는 경우의 개수를 출력한다 예를 들면, A = [1, 2] B = [-2,-1] C = [-1, 2] D = [0, 2] 이면, The two tuples are: 1. (0, 0, 0, 1) -> A[0] + B[0] + C[0] + D[1] = 1 + .. 2020. 11. 3.