https://www.acmicpc.net/problem/1712A : 고정비용B : 한 대의 가변 비용C : 노트북의 가격x: 노트북 개수손익분기점이 발생하려면, A+Bx<Cx 여야 한다. 식을 정리하면 x>A/(c-b)인 시점이 손익분기점이고 x는 자
https://www.acmicpc.net/problem/2839정확하게 Nkg을 만드려면 무조건 3kg과 5kg로 이루어져야 하기 때문에결국 무게는 (5의 배수) + (3의 배수)로 이루어져있다.이때, 봉지수를 적게 가져가려면5kg을 우선으로 생각하되 , 5
🍐문제 https://www.acmicpc.net/problem/2292 🍐풀이 과정 중앙의 1에서부터, 떨어진 거리에 따라 떨어진 거리 1 = layer 1 떨어진 거리 2= layer 2 .. 떨어진 거리5 = layer5 라고 둔다. 이때, 벌집
https://www.acmicpc.net/problem/1193https://s3-us-west-2.amazonaws.com/secure.notion-static.com/c45ab6d9-c3a9-437e-8014-a587441b8427/Untitle
https://www.acmicpc.net/problem/2869처음에 while문으로 점진적으로 풀었더니 시간초과가 떠버림무조건 처음부터 while돌려서 찾으려고만 생각했는데 이런식으로 풀다니 재밌다.
https://www.acmicpc.net/problem/10250막줄에 "\\n"이거 출력 안해서 입력 형식이랑 안 맞아서^^ 아무리 생각해도 이게 맞는데 왜 틀린 건지 계속 고민함;
정석 DFS 방법으로 풀었다. 프로그래머스는 처음사용해서 DFS 함수 인자로 입력 값을 다 넣긴 했지만...! 🙄 원래 내 방식대로라면 전역변수를 썼을 것 같다.아무튼 DFS 함수에서 int L은 그래프의 레벨 (numbers배열의 0 ...n-1이 순서대로 들어간다
문제 풀러가기 🌲participant와 completion배열은 길이가 1차이 나므로, 일단 정렬을 한 후 for문을 돌리며 비교한다. participant.size()-2까지! (마지막 원소 전까지)for문을 다 비교해도 같지 않은 것이 없으면, participan
우선 로프를 내림차순으로 정렬한다.만약 20,19,18,5 이런 로프가 있으면로프들을 골랐을 때, 최대 중량(w)은 그 중 가장 무게가 작은 로프 \* 로프개수(k)가 된다.\-> 가장 작은 로프가 견딜 수 있어야 하기 때문에!따라서 1\. 로프를 내림차순한다.2\.
먼저 들어온 입력에 대해 시작시간으로 오름차순 정렬한다. vector<pair<int,int>>를 쓰면 알아서 첫번째 요소 기준으로 된다 해서 그렇게 함이렇게 하고나서 이제 pair를 순차적으로 살펴보는데끝나는 시간을 우선순위 큐 minHeap으로 만들어놓고
서류성적과 면접성적중 어느것 하나라도, 다른 모든 사원보다 순위가 높아야 하므로, 서류성적을 기준으로 오름차순 정렬해놓고, 면접성적을 따진다. 오름차순 정렬해놓고, 순위가 낮은 사원부터 그 앞 순위 사원들을 거꾸로 따져가며 2중 for문을 돌렸더니 시간초과로 틀려버렸다
단순한 문제인데, 예외 처리 할 것이 있다.최대 사용일 수는1) (V/P) \* L2) V%P 결국 1)+2)를 더해주는 것으로 생각했는데2)의 경우 V%P 이 L 보다 크게 나오는 경우가 있다.예를 들어, 24(V)일의 휴가동안, 캠핑장은 연속하는 5(P)일중 3(L
(시작시간, 끝나는 시간)을 갖는 구조체로 입력값을 저장한다.이후 끝나는 시간을 기준으로 오름차순 정렬하고, 선택한 이전 끝나는 시간과 가장 가까운 시작시간(이전 끝나는 시간보다 크거나 같은)을 가진 것을 순차적으로 선택하여야 한다.예를 들어의 입력의 경우, 끝나는 시
그리디 2문제만 더 풀고 잘라했는데 이 문제에서 잘못 생각해서 시간 순삭됐다 🥲. 이 문제의 핵심은, 플러그를 뽑을 때이후 한 번도 쓰이지 않을 기기거나, 제일 마지막에 쓰일 기기를 뽑는 것이다.사용 순서(K번)들을 order 배열에 받는다.K번 반복문 돌기현재 플러
Haming Distance를 구할 때는 문자열의 각 위치를 비교해야 하므로입력을 받을 때cntm 배열에, 각 열마다 A,C,G,T가 몇개 들어있는지 넣어준다.0~M-1까지 각 열을 보면서 cnt배열을 이용해 어떤 알파벳이 제일 많은지 구하고, 그 알파벳을 새로운 s의
기본적인 DFS, BFS 탐색 문제이다.DFS는 재귀호출, BFS는 큐를 이용해 구현했다.이때 그래프는 벡터 배열을 이용한 인접리스트로 나타내었고, 두 정점사이에 여러 간선이 있을 수 있으므로 각 배열마다 오름차순으로 정렬해주었다.방문했는지 검사하는 visited배열
N,M까지의 최단 거리를 구하는 것이므로, BFS를 이용한다.붙어있는 수 저장string으로 받은 후M번 for문을 돌며 string.at(i)로 자르기 잘라진 char-48을 이용해 아스키 코드 숫자로 변경최단거리, BFSint map\[MAX]\[MAX] : 입력
처음에 dfs로 풀다가 멈추는 구간이 N==K일 때밖에 없으니깐 엄청나게.. 깊어지고 안 끝나서bfs로 풀었다.<수빈이의 위치, 걸린 시간> pair를 queue에 저장한다.pop한 pair의 수빈이의 위치가 동생과 같아질 때 시간을 리턴하면 된다. 시간이 적은
https://www.acmicpc.net/problem/1012
🍎 문제 링크입력을 연결리스트로 받는다.bool visited 배열을 활용하여 BFS, DFS 두 방법 으로 해결 할 수 있다.노드를 순차적으로 탐색하면서 아직 방문된 적 없는 경우 bfs나 dfs를 호출 한 후 cnt++
https://www.acmicpc.net/problem/2667😇 BFS로 풀었는데 왜.. 왜 대체 안돌아가나 애먹었는데 큐에서 pop을 빼먹었다 컄캬컄ㅋ캐컄 간단한 BFS/DFS 문제다.입력을 char형으로 받고 , visited 배열을 사용해주었다.이런
문제 풀이 주어진 k개의 숫자 중에서 6개를 고르는 조합 문제이다. 주어진 k개의 숫자를 오름차순으로 정렬하고,
https://www.acmicpc.net/problem/13549
🦠 DFS(조합)과 BFS를 동시에 사용하는 문제
https://www.acmicpc.net/problem/2206
https://www.acmicpc.net/problem/2589
https://www.acmicpc.net/problem/2573
📓 https://programmers.co.kr/learn/courses/30/lessons/43163
https://www.acmicpc.net/problem/17225
https://programmers.co.kr/learn/courses/30/lessons/42586
https://www.acmicpc.net/problem/2615
https://www.acmicpc.net/workbook/view/2052 재귀함수 연습용! 순열, 조합 기억하기 👣
https://www.acmicpc.net/problem/9663
https://www.acmicpc.net/problem/14889
https://www.acmicpc.net/problem/16987
https://www.acmicpc.net/problem/14888
https://www.acmicpc.net/problem/2580
next_permutation 🤙🏻 을 이용한 순열
https://programmers.co.kr/learn/courses/30/lessons/42577
map
✨map을 잘 이용해보자
sort 기준 만들어주기! 📓
내림차순 해서 생각하기
백준 연결요소의 개수 찾기 문제랑 똑같은 문제이다. DFS, BFS둘 다 이용해서 풀 수 있다. 연결요소 입력 받는 형태를 복습하기 위해 글을 또 써본다..👀
한 가지 경로를 찾은 후엔 더 이상 dfs를 돌지 않고 종료!
priority_queue는 기본적으로 내림차순이다. (maxHeap)
C++ 입출력 속도 향상 기억해 😵✨
DP
Bottom-Up, Top-down 두 가지 방식의 DP
스택 배열으르 사용해보자
Kruskal MST using Union Find