J-Log
Learning Diary

[백준 13300번] 방 배정 C++ 풀이 문제 정보 초등학교에서는 단체로 2박 3일 수학여행을 가기로 했다. 여러 학년이 같은 장소로 수학여행을 가려고 하는데 1학년부터 6학년까지 학생들이 묵을 방을 배정해야 한다. 남학생은 남학생끼리, 여학생은 여학생끼리 방을 배정해야 한다. 또한 한 방에는 같은 학년의 학생들을 배정해야 한다. 물론 한 방에 한 ...

Range-based for loop(C++11 이상에서 지원) #include <bits/stdc++.h> using namespace std; int main() { int arr[] = { 1, 2, 3, 4, 5 }; for (auto e : arr) { cout << "e: " << e << ...

바킹독님의 실전알고리즘배우기 3강듣고 요약 바킹독의 실전 알고리즘 3강 링크 배열의 성질 배열의 공간 지역성 때문에 cache hit rate가 높다. insert와 erase 함수의 구현 & #include <bits/stdc++.h> using namespace std; void insert(int idx, int nu...

[백준 10808번] 알파벳 개수 C++ 풀이 문제 알파벳 소문자로만 이루어진 단어 S가 주어진다. 각 알파벳이 단어에 몇 개가 포함되어 있는지 구하는 프로그램을 작성하시오. 입력 첫째 줄에 단어 S가 주어진다. 단어의 길이는 100을 넘지 않으며, 알파벳 소문자로만 이루어져 있다. 출력 단어에 포함되어 있는 a의 개수, b의 개수, …, z...

배열과 포인터 배열은 포인터와 조금 유사한 면이 있다. 배열과 포인터는 모두 ‘주소’를 나타낸다. 배열과 포인터 모두 ‘*’ 연산과 ‘[]’ 연산이 가능하다. int arr[] = { 5, 10, 15 }; int* parr = arr; // 5 5 5 5 를 출력 cout << arr[0] << ' ' << *arr...

C/C++에서 pointer(*)와 reference(&)의 차이점 Pointers vs References in C++ 정리 링크 포인터와 참조자의 정의 포인터는 다른 변수의 주소를 저장하는 변수이다. 참조자는 이미 존재하는 변수에게 새로운 이름을 주는 것이다. 변수 초기화 포인터는 선언만 하고 초기화 하지 않을 수도 있다. 참조자는 선언과...

[백준 2309번] 일곱난쟁이 C++ 풀이 문제 왕비를 피해 일곱 난쟁이들과 함께 평화롭게 생활하고 있던 백설공주에게 위기가 찾아왔다. 일과를 마치고 돌아온 난쟁이가 일곱 명이 아닌 아홉 명이었던 것이다. 아홉 명의 난쟁이는 모두 자신이 “백설 공주와 일곱 난쟁이”의 주인공이라고 주장했다. 뛰어난 수학적 직관력을 가지고 있던 백설공주는, 다행스럽게...

[백준 10093번] 숫자 C++ 풀이 문제 두 양의 정수가 주어졌을 때, 두 수 사이에 있는 정수를 모두 출력하는 프로그램을작성하시오. 입력 두 정수 A와 B가 주어진다. (1 ≤ A, B ≤ 10^15, A와 B의 차이는 최대 100,000) 출력 첫째 줄에 두 수 사이에 있는 수의 개수를 출력한다. 둘째 줄에는 두 수 사이에 있는 수를 ...

[백준 10871번] X보다 작은 수 C++ 풀이 문제 정수 N개로 이루어진 수열 A와 정수 X가 주어진다. 이때, A에서 X보다 작은 수를 모두 출력하는 프로그램을 작성하시오. 입력 첫째 줄에 N과 X가 주어진다. (1 ≤ N, X ≤ 10,000) 둘째 줄에 수열 A를 이루는 정수 N개가 주어진다. 주어지는 정수는 모두 1보다 크거나 같고,...

바킹독님의 실전알고리즘 배우기 2강 듣고 요약 바킹독의 실전 알고리즘 2강 링크 함수 인자 넘기기 답은 0, 10, 0이다. int나 struct는 함수에 인자를 보낼 때 복사를 해서 보내기 때문이고, 배열은 주소를 보내기 때문이다. (나는 2번을 틀려서 맴찢이었다.. 배열과 포인터에 관하여 다시 공부를 해야겠다.) 참조자(&)를 사용...