본문 바로가기

공부 정리346

[백준] 자바 10972 다음 순열 문제 1부터 N까지의 수로 이루어진 순열이 있다. 이때, 사전 순으로 다음에 오는 순열을 구하는 프로그램을 작성하시오. 사전 순으로 가장 앞서는 순열은 오름차순으로 이루어진 순열이고, 가장 마지막에 오는 순열은 내림차순으로 이루어진 순열이다. N = 3인 경우에 사전순으로 순열을 나열하면 다음과 같다. 1, 2, 3 1, 3, 2 2, 1, 3 2, 3, 1 3, 1, 2 3, 2, 1 입력 첫째 줄에 N(1 ≤ N ≤ 10,000)이 주어진다. 둘째 줄에 순열이 주어진다. 출력 첫째 줄에 입력으로 주어진 순열의 다음에 오는 순열을 출력한다. 만약, 사전 순으로 마지막에 오는 순열인 경우에는 -1을 출력한다. 테스트 케이스 입력 1 3 2 3 1 출력 1 3 1 2 입력 2 5 4 1 2 3 5 출력 2.. 2022. 2. 28.
[알고리즘] 다익스트라 알고리즘 다익스트라 알고리즘(데이크스트라) 그래프에서 어떠한 점(A)에서 어떠한 점(B)으로 가는 최단 거리를 구할 때 사용하는 알고리즘입니다. 핵심 1. 다익스트라는 BFS의 확장 같은 느낌.(현재 점에서 연결되어 있는 모든 점 검사,,, 그러나 이미 거리가 확정된 곳은 제외) 2.거리 배열을 하나 만들어서 각 점을 할당한다. 각 배열이 의미하는 바는 시작지점에서 해당 지점까지 얼마나 걸리는지 기록. 3.가중치에 음수가 있다면 알고리즘 성립안됨!! (1) S1에서 시작하여, 배열 안 S2,S3 값을 1,5로 초기화합니다. (2) 현재 위치에서 가까운 S2로 갑니다. (3) S2에서 S3로 가는데 3의 비용이 듭니다. 현재 누적된 S2의 비용(1) + S3로 가는 비용(2) VS 기존에 있는 S3의 값(S1->S.. 2022. 2. 25.
[백준] 자바 2961 도영이가 만든 맛있는 음식 문제 도영이는 짜파구리 요리사로 명성을 날렸었다. 이번에는 이전에 없었던 새로운 요리에 도전을 해보려고 한다. 지금 도영이의 앞에는 재료가 N개 있다. 도영이는 각 재료의 신맛 S와 쓴맛 B를 알고 있다. 여러 재료를 이용해서 요리할 때, 그 음식의 신맛은 사용한 재료의 신맛의 곱이고, 쓴맛은 합이다. 시거나 쓴 음식을 좋아하는 사람은 많지 않다. 도영이는 재료를 적절히 섞어서 요리의 신맛과 쓴맛의 차이를 작게 만들려고 한다. 또, 물을 요리라고 할 수는 없기 때문에, 재료는 적어도 하나 사용해야 한다. 재료의 신맛과 쓴맛이 주어졌을 때, 신맛과 쓴맛의 차이가 가장 작은 요리를 만드는 프로그램을 작성하시오. 입력 첫째 줄에 재료의 개수 N(1 ≤ N ≤ 10)이 주어진다. 다음 N개 줄에는 그 재료의 신.. 2022. 2. 24.
JS Arrays.prototype 의 의미 글 작성 동기 자바스크립트 문법 관련해서 모르는 게 있을 때 mdn 사이트를 주로 이용하는 편인데, mdn에서 arrays.sort에 대하여 검색하면 Array.prototype.sort()라는 문서가 나옵니다. 이때 prototype이 왜 사이에 껴있는지 궁금하여 공부했습니다.(링크) 예시를 통하여 이해하였습니다. function A(){ this.abc = function() { return 5; } } const temp1 = new A(); const temp2 = new A(); console.log(temp1 === temp2); //false console.log(temp1.abc === temp2.abc); //false function A(){ } A.prototype.abc = func.. 2022. 2. 23.
[프로그래머스] 자바 카펫 문제 Leo는 카펫을 사러 갔다가 아래 그림과 같이 중앙에는 노란색으로 칠해져 있고 테두리 1줄은 갈색으로 칠해져 있는 격자 모양 카펫을 봤습니다. Leo는 집으로 돌아와서 아까 본 카펫의 노란색과 갈색으로 색칠된 격자의 개수는 기억했지만, 전체 카펫의 크기는 기억하지 못했습니다. Leo가 본 카펫에서 갈색 격자의 수 brown, 노란색 격자의 수 yellow가 매개변수로 주어질 때 카펫의 가로, 세로 크기를 순서대로 배열에 담아 return 하도록 solution 함수를 작성해주세요. 제약사항 갈색 격자의 수 brown은 8 이상 5,000 이하인 자연수입니다. 노란색 격자의 수 yellow는 1 이상 2,000,000 이하인 자연수입니다. 카펫의 가로 길이는 세로 길이와 같거나, 세로 길이보다 깁니다.. 2022. 2. 21.
[백준] 자바 1992 쿼드트리 문제 흑백 영상을 압축하여 표현하는 데이터 구조로 쿼드 트리(Quad Tree)라는 방법이 있다. 흰 점을 나타내는 0과 검은 점을 나타내는 1로만 이루어진 영상(2차원 배열)에서 같은 숫자의 점들이 한 곳에 많이 몰려있으면, 쿼드 트리에서는 이를 압축하여 간단히 표현할 수 있다. 주어진 영상이 모두 0으로만 되어 있으면 압축 결과는 "0"이 되고, 모두 1로만 되어 있으면 압축 결과는 "1"이 된다. 만약 0과 1이 섞여 있으면 전체를 한 번에 나타내지를 못하고, 왼쪽 위, 오른쪽 위, 왼쪽 아래, 오른쪽 아래, 이렇게 4개의 영상으로 나누어 압축하게 되며, 이 4개의 영역을 압축한 결과를 차례대로 괄호 안에 묶어서 표현한다 위 그림에서 왼쪽의 영상은 오른쪽의 배열과 같이 숫자로 주어지며, 이 영상을 .. 2022. 2. 18.
반응형