Development. 37

[BAEKJOON] 2577 - 숫자의 개수

https://www.acmicpc.net/problem/2577 3개의 숫자 A, B, C를 입력받고, A * B * C를 한 결과에 0~9 각각의 숫자가 몇번 사용되었는지 출력하는 문제다. A, B, C를 입력받고, 세 수를 곱한 결과를 string으로 변환하여 각 숫자별로 count를 세어 출력 하도록 구현하였다. #include #include using namespace std; int main() { unsigned short first, second, third; cin >> first >> second >> third; long long calculated_value = first * second * third; string toStr = to_string(calculated_value);..

[BAEKJOON] 4673 - 셀프 넘버

https://www.acmicpc.net/problem/4673 size 10000을 가지는 boolean 배열에 1~10000까지 각 자리수의 합을 계산하여, 해당 자리에 flag를 세팅하는 방법으로 구현 했다. #include #define IOS_PREDEFINE() \ ( \ (cin.tie(NULL)), \ (cout.tie(NULL)), \ (std::ios::sync_with_stdio(false)), \ (void) 0 \ ) using namespace std; const int MAX = 10001; int d(int n) { int sum = 0; sum += n; int reminder = n; while(reminder) { sum += reminder % 10; reminder..

[C++] array container(std::array) 개념 및 사용법 정리

Array container란? 고정 길이의 배열을 표현 하기 위한 것입니다. (std::array) c++ 11에 추가 되었으며, 이전 c++버전에서의 배열의 불편한 점을 개선한 container입니다. array container를 사용하기 위해서는, header file include가 필요합니다. #include Array container 생성자 array container 선언 부분은 아래와 같이 정의 되어 있습니다. array class array; 위 정의에 따라, typename T에는 데이터 타입, size_t N에는 인자의 개수를 전달 해야 합니다. 아래 예제를 통해 선언 및 초기화 방법을 확인 할 수 있습니다. // int형 데이터를 가지고, sise가 3인 array 선언, 초기화..

Development./C++ 2020.07.26

[C++] STL(Standard Template Library) 이란?

STL이란? STL(Standard Template Library)란 표준 C++ 라이브러리로서, 프로그래밍에 필요한 자료 구조와 알고리즘을 Template로 제공하는 라이브러리를 말한다. STL의 구성 요소 STL은 아래와 같이 4가지의 구성 요소를 제공한다. Algorithm - 정렬, 연산, 삭제, 검색 등을 지원하는 함수 템플릿 Container - 데이터를 저장하는 객체를 제공, 클래스 템플릿으로 제공한다. - Container는 크게 Sequence container, Assiociative container로 구분 된다. - Sequence container : array, vector, list, deque - Associative container : set, multiset, map, ..

Development./C++ 2020.07.26

Refactoring 이란?

Refactoring이 무엇인가? Refactoring이란, 외부 동작을 바꾸지 않으면서 내부 구조를 개선하는 방법으로, 소프트웨어 시스템을 변경하는 프로세스입니다. 코드가 작성된 후 디자인을 개선하는 작업으로, 모든 것을 미리 생각해서 구현하기 보다 개발을 하면서 지속적으로 좋은 소프트웨어 디자인을 갖도록 하는 것입니다. 따라서, Refactoring을 할 때는 기능을 추가해서는 안 되고, 단지 코드의 구조 개선에만 신경 써야 합니다. Refactoring을 해야 하는 이유? Refactoring을 하면, 소프트웨어 디자인을 개선 시킬 수 있습니다. 소프트웨어의 의도된 디자인은 시간이 갈 수록 망가져 가는데, 정기적인 Refactoring은 코드가 디자인을 유지하도록 도와 줍니다. 소프트웨어를 더 이해..