목록전체보기 (227)
득이공간
1003번: 피보나치 함수 각 테스트 케이스마다 0이 출력되는 횟수와 1이 출력되는 횟수를 공백으로 구분해서 출력한다. www.acmicpc.net #include using namespace std; pair DP[41]; int main() { ios::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL); DP[0] = make_pair(1, 0); DP[1] = make_pair(0, 1); for (int i = 2; i > T..
해당 게시물은 쥬신게임아카데미의 '2개월차 C++' 강의를 수강하며 학습한 내용을 개인적으로 정리한 글입니다. 📌 목차 - 2. C++ 기본 1. 클래스 2. 생성자, 소멸자, 전방선언 3. 복사생성자 4. const, static, this, extern, friend 5. 상속, 다형성 6. 캐스팅, 가상함수테이블, 바인딩 7. 순수가상함수, 연산자오버로딩 8. 인라인함수, 임시객체, 함수객체 9. 템플릿 10. STL개요 11. vector 12. list 13. map 14. 알고리즘함수 📌 1. 클래스 변수와 함수를 하나로 묶어 놓은 하나의 틀 instance: 메모리에 등록된 클래스, 하나의 객체 멤버접근지정자: private, public, protected 속성: 은닉화, 캡슐화, 상속성,..
해당 게시물은 쥬신게임아카데미의 '1개월차 C++' 강의를 수강하며 학습한 내용을 개인적으로 정리한 글입니다. 📌 목차 - 1. C++ 기초 1. 변수 2. 자료형 3. 연산자 4. 분기문 5. 반복문 6. 난수 7. n진수 8. 함수 9. 메모리영역 10. 포인터 11. 이중포인터 12. 1차원정적배열 13. 2차원정적배열 14. 문자열 15. 구조체 16. 공용체, 열거체 17. 동적할당 18. 입출력스트림버퍼, 경로 19. 파일입출력, 메모리함수 20. 함수포인터, 재귀함수 21. 레퍼런스, 매크로 22. 조건부컴파일, 파일분할 23. string 📌 1. 변수 O: 한글, _로시작 X: 띄어쓰기, 숫자로시작, _$제외한특수문자, 사용되는키워드 📌 2. 자료형 종류: 정수, 실수, 문자, 논리 1b..
해당 게시물은 이득우 교수님의 '게임 수학의 이해' 강의를 수강하며 학습한 내용을 개인적으로 정리한 글입니다. 📌 목차 - 1장. 게임 수학의 소개 1-1. 게임 수학의 개요 1-2. 물체의 수학 1: 이동 변환의 구현 원리 1-3. 물체의 수학 2: 삼각형과 정점 1-4. 물체의 수학 3: 벡터의 내적과 외적 1-5. 회전의 수학 1: 삼각함수와 회전변환 1-6. 회전의 수학 2: 사원수 📌 1-1. 게임 수학의 개요 * 게임 수학의 분류 1. 공간에 대한 수학 2. 물체에 대한 수학 3. 회전에 대한 수학 * 공간에 대한 수학 - 현실 세계 vs 가상 세계 - 벡터 공간(Vector Space): 게임이 사용하는 가상 공간의 본질 - 벡터: 벡터 공간의 원소 - 스칼라: 체 집합의 원소 - 행렬 =>..
11659번: 구간 합 구하기 4 첫째 줄에 수의 개수 N과 합을 구해야 하는 횟수 M이 주어진다. 둘째 줄에는 N개의 수가 주어진다. 수는 1,000보다 작거나 같은 자연수이다. 셋째 줄부터 M개의 줄에는 합을 구해야 하는 구간 i와 j www.acmicpc.net #include #include using namespace std; vector Sum; int main() { ios::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL); int N, M; cin >> N >> M; Sum.reserve(N); for (int i = 0; i > Number; if (i == 0) { Sum.emplace_..
1966번: 프린터 큐 여러분도 알다시피 여러분의 프린터 기기는 여러분이 인쇄하고자 하는 문서를 인쇄 명령을 받은 ‘순서대로’, 즉 먼저 요청된 것을 먼저 인쇄한다. 여러 개의 문서가 쌓인다면 Queue 자료구조에 www.acmicpc.net #include #include #include using namespace std; void TestCase() { int N, M; cin >> N >> M; deque PrinterQueue; for (int i = 0; i > Priority; PrinterQueue.emplace_back(Priority, i); } int Cnt = 1; while (!PrinterQueue.empty()) { int..
해당 게시물은 하루코딩님의 'Do it! 알고리즘 코딩테스트 with C++' 강의를 수강하며 학습한 내용을 개인적으로 정리한 글입니다. 📌 목차 - 1장. 자료구조 1-1. 배열, 리스트, 벡터 1-2. 구간 합 1-3. 스택, 큐 📌 1-1. 배열, 리스트, 벡터 * 배열 - 메모리의 연속 공간에 값이 채워져 있는 형태의 자료구조 * 배열 특징 1. 인덱스를 사용해서 값에 바로 접근할 수 있다. 2. 새로운 값을 삽입하거나 특정 인덱스에 있는 값을 삭제하기 어렵다. - 삽입 or 삭제는 해당 인덱스 주변의 값을 이동시키는 과정 필요 3. 배열의 크기는 선언할 때 지정할 수 있으며, 한 번 선언하면 크기를 늘리거나 줄일 수 없다. 4. 구조가 간단해서 코딩 테스트에서 많이 사용된다. * 리스트 - 값과..
1253번: 좋다 첫째 줄에는 수의 개수 N(1 ≤ N ≤ 2,000), 두 번째 줄에는 i번째 수를 나타내는 Ai가 N개 주어진다. (|Ai| ≤ 1,000,000,000, Ai는 정수) www.acmicpc.net #include #include #include using namespace std; vector Sequence; int main() { ios::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL); int N; cin >> N; Sequence.reserve(N); for (int i = 0; i > Number; Sequence.emplace_back(Number); } sort(Seque..
1922번: 네트워크 연결 이 경우에 1-3, 2-3, 3-4, 4-5, 4-6을 연결하면 주어진 output이 나오게 된다. www.acmicpc.net #include #include #include using namespace std; vector EdgeList; vector RootNode; bool Compare(const vector& Left, const vector& Right) { return Left[2] < Right[2]; } int Find(const int& Node) { if (Node != RootNode[Node]) { RootNode[Node] = Find(RootNode[Node]); } return RootNode[Node]; } bool Union(const int..
1197번: 최소 스패닝 트리 첫째 줄에 정점의 개수 V(1 ≤ V ≤ 10,000)와 간선의 개수 E(1 ≤ E ≤ 100,000)가 주어진다. 다음 E개의 줄에는 각 간선에 대한 정보를 나타내는 세 정수 A, B, C가 주어진다. 이는 A번 정점과 B번 정점이 www.acmicpc.net #include #include #include using namespace std; vector EdgeList; vector RootNode; bool Compare(const vector& Left, const vector& Right) { return (Left[2] < Right[2]); } int Find(int Node) { if (Node != RootNode[Node]) { RootNode[Node]..