반응형

프로그래머스 41

[L2] 프로그래머스 전력망을 둘로 나누기 C++ BFS, 완전 탐색, 브루트포스 알고리즘

리뷰 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 브루트포스 알고리즘으로 간선을 1개씩 지워가며 모든 경우의 그룹을 조회하여 그룹간 송신탑 개수의 차를 구하는 문제  전역 변수v : BFS시 방문배열로 사용하기 위한 정수형 배열 함수1. bfsint bfs(int node, const vector>& lst) 너비 우선 탐색을 통해 노드간 관계를 만들고, 각 노드에 방문 처리를 진행하는 함수매개 변수로 탐색을 시작할 노드 node와 인접 리스트 정보 lst를 입력받는다.정수형 큐 q를 초기화 하고 초깃값인 node를 push해준다.node를 방문 처리 해주고, 그룹간 송신탑의 개수 cnt 개수를 1로..

[L3] 프로그래머스 이중우선순위큐 C++ 우선순위 큐, 해시맵

리뷰 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 백준에 동일한 문제가 있다. min_heap과 max_heap을 각각 사용해 주고, 해시맵을 통해 해당 숫자가 존재하는지 여부를 체크하면 된다, 정수형 배열을 사용해도 될 것 같은데, 입력되는 수의 범위가 제한사항에 적혀있지 않아 해시맵을 사용하는 것이 안전해 보인다.  전역 변수dic : 현재 숫자가 존재하는지 여부를 체크할 해시맵, key는 숫자, value는 해당 숫자의 개수를 의미한다. 함수없음  문제풀이최소값과 최대값을 우선순위로 저장할 우선순위큐 min_pq, max_pq를 초기화 해준다.operations벡터를 참조하여 공백을 기준으로 o..

[L2] 프로그래머스 더 맵게 C++ 우선순위 큐

리뷰 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 모든 음식의 스코빌 지수를 K 이상으로 만드는 문제  전역 변수없음  함수없음  문제풀이오름차순으로 정수를 정렬하는 우선순위 큐 pq를 초기화 한다.scoville 벡터에 존재하는 값들을 모두 pq에 추가해 준다.pq의 사이즈가 2이상이고, pq의 top이 K보다 작다면 계속하여 반복문을 실행해 준다.pq에서 두개의 음식 foo1, foo2를 꺼내주고 new_food를 food1 + food2 * 2로 초기화 해준다.answer을 1만큼 증가시키고 new_food를 pq에 추가해 준다.모든 반복문을 마친 후 pq가 비지 않았고, pq의 top이 K보다..

[L2] 프로그래머스 주식가격 C++ 우선순위 큐

리뷰 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 초 단위로 기록된 주식가격이 담긴 배열 prices가 매개변수로 주어질 때, 가격이 떨어지지 않은 기간은 몇 초인지를 return 하도록 solution 함수를 완성하는 문제  전역 변수v : 각 주식의 떨어지지 않은 기간을 저장하기 위한 정수형 배열 함수없음  문제풀이정수  n을 prices벡터의 길이로 초기화 해준다.pair타입의 우선순위 큐 pq를 초기화 해준다, 해당 pq는 주식 가격 기준 내림차순이다.n번의 for문을 개행해 준다.pq가 비지 않았고, pq의 top이 prices의 i번째 인덱스 값보다 클 경우 pq에서 꺼내준다.v배열의 해당..

[L3] 프로그래머스 베스트앨범 C++ 해시맵, 우선순위 큐

리뷰 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 가장 많이 Play된 음악의 장르 순으로, 각 장르에서 최대 2개까지의 음악 고유번호를 출력하는 문제문자열을 기준으로 Play횟수를 카운팅 해야하므로 맵을 써야된다.장르가 중복으로도 주어지므로 각 고유번호 별 Play횟수를 알아야 한다.즉, 장르별 Play횟수의 합과 음악의 고유번호, 개별 Play횟수를 모두 알아야 하고, Play의 최대를 알아야 하는 문제  전역 변수Song : 음악의 Play횟수와 고유 번호를 저장하기 위한 구조체Desc : 음악의 장르와 Play횟수의 총합을 저장하기 위한 구조체dic1 : 음악의 장르와 해당 장르의 음악들을 해..

[L3] 프로그래머스 네트워크 C++ 유니온 파인드

리뷰 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr연결된 컴퓨터끼리를 한개의 네트워크라 보고, 네트워크 집합의 개수를 구하는 문제  전역 변수nodes : 각 컴퓨터가 속한 네트워크의 번호를 저장하기 위한 정수형 배열, 크기는 200으로 초기화 함수1. Findint Find(int a) 노드가 속한 집합의 번호를 찾기 위한 함수매개변수로 탐색하고자 하는 노드의 번호를 a로 받아온다.nodes의 a인덱스가 a라면 a를 리턴해 주면 된다.아닐 경우 재귀를 통해 탐색을 하며 경로 압축을 시켜준다.경로 압축을 통해 Find가 실행될때마다 경로가 최신화 된다. 2...

[L2] 프로그래머스 H-index C++ 완전 탐색, 브루트포스 알고리즘, DAT

리뷰처음엔 문제 이해가 잘 되지 않았는데 벡터 내에 존재하는 수가 n개 이상인 최대값을 구하는 문제로 받아들였다.  프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr  전역 변수v : 나온 숫자의 합계를 저장해 둘 정수형 배열, 크기는 10001로 세팅한다. 함수없음  문제풀이매개변수로 주어진 citations 벡터에 존재하는 값들을 for문을 통해 모두 탐색한다.v배열의 1 ~ 현재수까지의 인덱스를 모두 1씩 증가시켜준다.len을 citations벡터의 길이로 초기화 해주고, h_index변수를 0으로 초기화 해준다.len크기로 while문을 개행하고 현재 v..

[L2] 프로그래머스 C++ 가장 큰 수 정렬, 문자열

리뷰https://www.acmicpc.net/problem/16496백준에 존재하는 플레티넘 문제와 유사한 난이도인데 프로그래머스에선 L2난이도에 있다.  전역 변수없음  함수1. cmpbool cmp(string a, string b) 정렬을 할때 사용할 문자열을 비교하여 순서를 바꿀지 여부를 체크하는 함수numbers의 원소는 0 이상 1,000 이하이므로 매개변수로 주어진 문자열의 길이가 4가 넘을때까지 더해준다.만약 이미 4자릿수로 들어온 상태(1000)이라면 while문이 실행되지 않는다.두 문자열을 비교하여 a가 더 크다면 순서를 바꾸고, b가 더 크거나 같다면 바꾸지않는다. 문제풀이정수 벡터 numbers을 solution함수의 매개변수로 입력 받는다.문자열 벡터 answer을 초기화 해주..

[L4] 프로그래머스 MYSQL FrontEnd 개발자 찾기

테이블 정보1. SKILLCODESNAMETYPEUNIQUENULLABLENAMEVARCHAR(N)YNCATEGORYVARCHAR(N)NNCODEINTEGERYN  2. DEVELOPERSNAMETYPEUNIQUENULLABLEIDVARCHAR(N)YNFIRST_NAMEVARCHAR(N)NYLAST_NAMEVARCHAR(N)NYEMAILVARCHAR(N)YNSKILL_CODEINTEGERNN  예시 테이블1. SKILLCODESNAMECATEGORYCODEC++Back End4JavaScriptFront End16JavaBack End128PythonBack End256C#Back End1024ReactFront End2048VueFront End8192Node.jsBack End16384  2. DEV..

[L4] 프로그래머스 ORACLE 그룹별 조건에 맞는 식당 목록 출력하기

테이블 정보1. MEMBER_PROFILEColumn nameTypeNullableMEMBER_IDVARCHAR(100)FALSEMEMBER_NAMEVARCHAR(50)FALSETLNOVARCHAR(50)TRUEGENDERVARCHAR(1)TRUEDATE_OF_BIRTHDATETRUE  2. REST_REVIEW Column nameTypeNullableREVIEW_IDVARCHAR(10)FALSEREST_IDVARCHAR(10)TRUEMEMBER_IDVARCHAR(100)TRUEREVIEW_SCORENUMBERTRUEREVIEW_TEXTVARCHAR(1000)TRUEREVIEW_DATEDATETRUE  예시 테이블1. MEMBER_PROFILEMEMBER_IDMEMBER_NAMETLNOGENDERDAT..

728x90
반응형