전체 글328 CPP_1. AssortRock 13일차 오프라인 수업_220923 동적 배열 동적 배열의 작동 원리에 대해서는 stl vector를 참고하여 제작 vector의 최초 capacity는 클래스에서 static으로 선언하여 모든 인스턴스가 공유하도록 함 namespace ya { template class vector { public: private: static constexpr size_t DEFAULT_CAP = 32; T* mArr; size_t mSize; size_t mCapacity; }; } size는 실제로 벡터가 담고 있는 요소의 개수 capacity는 실제 할당된 메모리 동적 배열의 작동 원리는 size >= capacity일 때마다 capacity *= 1.5~2를 해서 옮겨 담는 것 실제 stl vector는 이 구현이 좀 더 복잡함 vector(s.. 2022. 9. 27. 4. 템플릿 기본 문법 - 클래스 템플릿 본 글은 코드누리의 Template Programming 강좌를 개인 학습 목적으로 정리한 글 입니다. https://www.ecourse.co.kr/course-status/ 클래스 템플릿의 기본 모양 멤버 함수에서 사용하는 클래스 템플릿 이름은 Complex 대신 Complex라고 사용할 수 있다. 템플릿 인자를 초기화할 때는 {} (일관된 초기화 기법)을 사용하면 됨 template class Point { T x, y; public: Point(T a = {}, T b = {}) : x(a), y(b) { } Point getPoint() const { return Point(x, y); } }; 템플릿 멤버 함수를 외부에 구현할 때 외부에도 template를 적어주어야 함 그리고 템플릿 이름도 .. 2022. 9. 27. 1주차-4. 11655번: ROT13 요약하자면 입력받은 문자 하나 하나를 알파벳 13칸 만큼 더하여 저장하고 그걸 출력하는 것 다만 Z 다음에는 A임(ROTATE) 먼저 무작정 풀어보기 #include #include using namespace std; char RotMachine(char ch) { char ret = 0; if ('a' = ch) { ret = ch - 'a'; for (int i = 0; i < 13; i++) { ret = (ret + 1) % 26; } return ret + 'a'; } else if ('A' = ch) { ret = ch - 'A'; for (int i = 0; i < 13; i++) { ret = (ret + 1) % 26; } return ret + 'A'; } else if (ch == .. 2022. 9. 26. 1주차-3. 1159번 농구 경기 1159번 농구 경기 문제 요약하자면 출전하는 선수들 중 첫 글자가 같은 선수들이 5명 이상 있다면 체크해두었다가 그 첫 글자들을 공백없이 출력하는 문제임 만약 5명 미만이라면 PREDAJA를 출력 먼저 무작정 풀어보기 #include #include #include using namespace std; int main() { int n = 0; std::cin >> n; std::string temp; int directAddr[128] = {}; for (int i = 0; i > temp; directAddr[temp[0]] += 1; } std::vector chVec; for (int i = 0; i < 128; i++) { if (directAddr[i].. 2022. 9. 26. 이전 1 ··· 64 65 66 67 68 69 70 ··· 82 다음