Machineboy空
https://www.acmicpc.net/problem/1717 문제요약0 a b : a가 포함되어 있는 집합과, b가 포함되어 있는 집합을 합친다.1 a b : 두 원소가 같은 집합에 포함되어 있는지를 확인한다.난이도Gold 5풀이 포인트Union-Find TreeREVIEW DP를 썼다고 함. 무슨 소린지 아직 파악 전.CODE// 코테 통과는 백트래킹까지만 알면되고! 유니온 파인드 부터는 킬러 문항으로 나옴!// Union은 합집합, Find: 그룹의 대표찾기!// DP기법의 두 가지 기법 중 하나로, 메모리자이제이션?#include using namespace std;int n, m;int par[1000001];// 0: 합집합, 1: Find // 대표를 리턴하는 연산void init(){ ..
https://www.acmicpc.net/problem/15649 문제요약1부터 N까지 자연수 중에서 중복 없이 M개를 고른 수열을 출력하라! 난이도Silver 3풀이 포인트백트래킹REVIEW 백트래킹은 곧 dfs다.. 아직 무슨 말인지 잘 와닿지 않는다.다시 공부해야한다.CODE// 백트래킹: 뒤로 다시 돌아가서 확인해본다! 역으로 돌아가본다!// 백트래킹을 곧 dfs라고 할 수 있다!#include using namespace std;// 거쳐온 경로vector v;int visited[10];int N,M;// 리프노드에 왔는지 체크를 phase ,단계void f(int phase){ if(phase == M){ for(auto it:v){ cout > N>>..
원래 버전에 새로운 기능을 추가했을 때 오류 없이 완벽하게 동작한다는 보장이 없다면 어떻게 해야할까?제대로 동작하는 소스는 그대로 둔 채 새 소스를 추가한 버전을 따로 만들어 관리하고 완벽하게 완성한 다음 원래 소스에 더할 수 있다면 편리할 것. 1) 브랜치란?브랜치(branch) : 나무에서 가지가 새 줄기를 뻗듯이 여러 갈래로 퍼지는 데이터 흐름을 가리키는 말로 사용합니다. 2) 브랜치 만들기// 새 브랜치 만들기git branch 브랜치명// 브랜치 사이 이동하기git checkout// 커밋내용 한 줄로 확인git log --oneline 3) 브랜치 정보 확인하기// 한번에 스테이지 올리기git add .//각 브랜치 최근 커밋 보기git log --oneline --branches//그래프 형..