1. Iterator 패턴이란?배열이나 컬렉션에 저장된 요소들을 순차적으로 탐색할 수 있도록, 내부 반복자(for문 등)에서 사용하는 변수(i 등)를 추상화하는 디자인 패턴이다. 자바에서 배열 arr에 저장된 모든 요소를 탐색하려면 보통 i라는 변수를 사용하여 반복문을 작성한다. i를 1씩 증가시키며 각 요소에 접근하는 방식이다.int[] arr = {1, 2, 3};for(int i = 0; i Iterator 패턴을 사용하면 i와 같은 변수를 직접 사용하지 않고도 컬렉션에 저장된 모든 요소를 탐색할 수 있다. 2. 예제 코드 작성하기 Book 클래스Book 클래스는 책의 이름을 저장하고 이를 반환하는 역할을 담당한다.// Book 클래스는 책의 이름을 저장 및 반환하는 책임만 갖는다.public c..
https://www.acmicpc.net/problem/1764 1764번: 듣보잡 첫째 줄에 듣도 못한 사람의 수 N, 보도 못한 사람의 수 M이 주어진다. 이어서 둘째 줄부터 N개의 줄에 걸쳐 듣도 못한 사람의 이름과, N+2째 줄부터 보도 못한 사람의 이름이 순서대로 주어진다. www.acmicpc.net #include #include #include using namespace std; int main() { ios_base::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL); int n, m; (cin >> n >> m).ignore(); map map; for (int i = 0; i < n; i++) { string name; getline(..
https://www.acmicpc.net/problem/7785 7785번: 회사에 있는 사람 첫째 줄에 로그에 기록된 출입 기록의 수 n이 주어진다. (2 ≤ n ≤ 106) 다음 n개의 줄에는 출입 기록이 순서대로 주어지며, 각 사람의 이름이 주어지고 "enter"나 "leave"가 주어진다. "enter"인 경우는 www.acmicpc.net map을 사용하여 key에는 이름, value에는 회사에 존재 여부를 기록합니다. enter -> map의 value로 1 저장 leave -> map의 value로 0 저장 map은 key 값을 기준으로 정렬을 할 수 있다. -> map map; 마지막으로 출력 시에 map 처음부터 끝까지 iterator를 돌리면서 value가 1로 저장된 key 값을 출..