2580번: 스도쿠(백준 C++) 2580번: 스도쿠 링크 코드 #include #include using namespace std; int arr[9][9]; vector list; void init(){ for(int i=0; i arr[i][j]; if(arr[i][j] == 0) list.push_back(make_pair(i, j)); } } } int full(){ int cnt = 0; for(int i=0; i 공부/백준 2020.11.10
9663번: N-Queen(백준 C++) 9663번: N-Queen 링크 코드 #include using namespace std; int col[16] = {0,}; int answer = 0; int n; bool check(int y){ for(int i=1; i n) answer += 1; else{ for(int i=1; i> n; solve(1); cout 공부/백준 2020.11.09
1010번: 다리 놓기(백준 C++) 1010번: 다리 놓기 링크 코드 #include using namespace std; int main() { int t; int n, m; cin >> t; long long answer = 1; for(int i=0; i> n >> m; if(n > (m/2)) n = (m - n); for(int j=0; j 공부/백준 2020.11.08
15652번: N과 M(4)(백준 C++) 15651번: N과 M(4) 링크 코드 #include #include using namespace std; vector v; int n, m; void solve(int cnt, int start){ if(m == cnt){ for(int i=0; i 카테고리 없음 2020.11.07
15651번: N과 M(3)(백준 C++) 15651번: N과 M(3) 링크 코드 #include #include using namespace std; int n, m; vector v; void solve(int cnt){ if(cnt == m){ for(int i=0; i 공부/백준 2020.11.06
15650번: N과 M(2)(백준 C++) 15650번: N과 M(2) 링크 코드 #include #include using namespace std; int n, m; bool check[9] = {0, }; vector v; void solve(int num, int cnt){ if(cnt == m) { for(int j=0; j 공부/백준 2020.11.05
15649번: N과 M(1)(백준 C++) 15649번: N과 M(1) 링크 코드 #include #include using namespace std; int n, m; vector v; bool check[9] = {0, }; void solve(int cnt){ if(m == cnt){ for(int i=0; i 2 -> ?? 1을지나 2를 지나서 3번째 숫자를 다시 선택하게 되는것이다. 그렇다면 선택지가 3 4 인가? 아니다. 이미 우리가 3을 썼다는 것을 Check Array로 알기 때문이다. 해서 다시 우리가 선택할 선택지는 4가 되고 이를 골라서 1 2 4를 출력한다. 이를 계속 반복하면 된다. 그림이 없는 설명이라 상당히 이해하기 어렵다고 생각이 된다. 그런 분들은 따로 깊이우선탐색, 넓이우선탐색에 대해 찾아 보신 후, 백트래킹까지 .. 공부/백준 2020.11.04
10814번: 나이순 정렬(백준 C++) 10814번: 나이순 정렬 링크 코드 #include #include #include using namespace std; bool compare(const pair &a, const pair &b){ return a.first age >> name; v.push_back(make_pair(age, name)); } stable_sort(v.begin(), v.end(), compare); for(int j=0; j 공부/백준 2020.11.03