C++(25)
-
21735 c++ - 눈덩이 굴리기
백트래킹 문제입니다. 또는 DP로도 풀 수 있습니다. [Swift] BackTracking / 백트래킹 / 퇴각검색BackTracking / 백트래킹 / 퇴각검색 여러 후보 해 중에서 특정 조건을 충족시키는 모든 해를 찾는 알고리즘. 해를 찾는 도중 막히면 돌아가 다시 해를 찾아간다. 1. 해를 찾아가는 과정은 '루트'에서chanhhh.tistory.com [종만북] Dynamic Programming / DP / 동적 계획법Algorithmic Problem Solving Strategies 개인적으로 읽고 정리한 요약입니다. 아래 링크에 문제 풀이 예제가 있습니다. GitHub - chanheki/AlgorithmicProblemSolvingStrategies: Algorithm Book Stu..
2024.11.09 -
2623 c++ - 음악프로그램
위상정렬을 사용해서 풀었습니다. 처음에는 조금 헤맸습니다. 뒤에 나오는 값들을 들고있게 만들어야 하나 해서, reverse로 뒤집어 보기도 했는데 그냥 바로 뒤에 있는 값만 들고 있으면 된다는 사실을 깨닫고 풀었습니다. [그래프/정렬/유향] 위상정렬 / Topological Sorting위상정렬 / Topological Sorting 유향 비순환 그래프(Directed Acyclic Graph, DAG) 에서 각 노드들을 선형 순서로 나열하는 방법입니다. 여기서 유향 비순환 그래프란, 방향이 있는 그래프 중에 사이클이 없chanhhh.tistory.com 문제보기 #include #include #include #include #include #define FASTIO ios::sync_with_stdi..
2024.11.08 -
2239 c++ - 스도쿠
간단한 백트래킹 문제이다. queue를 사용해서 0의 좌표값들을 저장해서 사용했는데, 이런식으로는 처음 사용해봐서 애를 좀 먹었다. /* ************************************************************************** *//* *//* ::: ::: ::: *//* Problem Number: 2239 :+: :+: :+: *//* ..
2024.10.31 -
1005 c++ - ACM Craft
위상정렬을 사용하면 쉽게 풀 수 있습니다. [그래프/정렬/유향] 위상정렬 / Topological Sorting위상정렬 / Topological Sorting 유향 비순환 그래프(Directed Acyclic Graph, DAG) 에서 각 노드들을 선형 순서로 나열하는 방법입니다. 여기서 유향 비순환 그래프란, 방향이 있는 그래프 중에 사이클이 없chanhhh.tistory.com1516번 문제와 거의 동일한 문제. 단 w의 값을 출력해주면 됩니다.#include #include #include #define fastio ios::sync_with_stdio(0), cin.tie(0)using namespace std;int main() { fastio; int t; cin >> t; for (i..
2024.10.30 -
5619 c++ - 세 번째
세번째 작은 수 찾는 프로그램. 우선 처음 접근을 next_permutation을 통해 찾으려고 했는데, 해당 함수는 1,1,1 과 같은 중복된 숫자에 대해서 순열을 찾지 않는다는 것을 깨달았습니다. 이는 모든 요소가 동일하기 때문에 사전 순으로 더 이상의 다른 순열이 존재할 수 없기 때문입니다. int i = 0; do { if (i == 2) { cout 그래서 dfs로 변경해서 풀었는데, 갯수가 10^8개가 되면서 dfs로 전부 찾으려고 하니까 시간 초과가 났다.생각해보니, 가장 작은 수 4개만 찾으면 세번째로 작은 수를 찾을 수 있을거라 판단하고 코드를 작성하여 해결했다. 정답 코드.#include #include #include #define fastio ios::sync_..
2024.10.24