반응형

공부 124

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

C++ Vector Container 정리

cplusplus 사이트 Reference를 참고하며 공부해봤습니다. 틀린 내용이 있다면 댓글로 지적 부탁드립니다. Vector 벡터는 크기가 변할 수 잇는 배열을 나타내는 'Sequence Container'이다. 순차 컨테이너란? 원소가 들어오는 대로 저장한다는 의미, 별도의 정렬없이 들어오는 순서대로 저장된다. 벡터는 배열과 마찬가지로 요소에도 연속적인 저장 위치를 사용한다. 이는 해당 요소의 포인터의 오프셋을 사용하여 배열과 마찬가지로 효율적으로 요소에 접근할 수 있다. 하지만, 선언하면서 저장공간을 정해줘야하는 배열과는 다르게 벡터는 동적으로 변경할 수 있다. 내부적으로 벡터는 동적으로 할당된 어레이를 사용하여 요소를 저장한다. 즉, 새 요소를 삽입할 때 크기가 커지기 위해 이 배열을 재할당해야..

공부/C++ 2020.11.01

1427번: 소트인사이드(백준 C++)

1427번: 소트인사이드 링크 코드 #include #include using namespace std; bool compare(int a, int b){ return a > b; } int main() { int arr[100]; int n, i = 0; cin >> n; for(; n > 0; i++){ arr[i] = n % 10; n /= 10; } sort(arr, arr + i, compare); for(int j=0; j b 가 true로 return 되면 먼저 들어간 수가 뒤의 수보다 클 때 True 이므로 내림차순으로 정렬이된다. 반대로 오름차순으로 정렬한다면 return a < b 로 하면 된다. compare 함수를 만들때 정렬 대상에 따라 parameter의 type도 신경을 써야하..

공부/백준 2020.10.31
반응형