![[C++] 백준 14단계 - 14425번 문제 (문자열 집합)](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbuxqsZ%2FbtsoxIhdlmH%2FpTr5SImRkP4kiq0CKa9u9k%2Fimg.png)
문제설명 소스코드 #include #include using namespace std; int main(void) { map m; int N, M; int count = 0; cin >> N >> M; for (int i = 0; i > str; m.insert(pair(str, true)); } for (int i = 0; i > str; if (m[str] == true) count++; } cout
![[JAVA] 모듈(응용 프로그램 모듈화)](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbELyLA%2FbtsnGZ5f0ki%2FCU4N1CtkKKSPEu3pFfEAL1%2Fimg.jpg)
이 게시글은 이것이 자바다(저자 : 신용권, 임경균)의 책과 동영상 강의를 참고하여 개인적으로 정리하는 글임을 알립니다. 모듈 Java 9부터 지원함 모듈은 패키지 관리 기능까지 포함된 라이브러리 모듈을 만들려면 필수로 모듈 기술자(module-info.java)가 있어야 한다. 모듈 기술자가 없으면 라이브러리이고, 있으면 모듈이다. 라이브러리와 달리 모듈은 패키지를 은닉하여 모듈 밖인 외부에서는 접근할 수 없게 할 수 있다.(접근 제한자 private와 비슷한 기능) 패키지 은닉 패키지를 은닉하는 이유는 아래와 같다. -패키지 1은 공개하고 패키지 2와 3은 은닉하여, 패키지 1로 사용방법을 통일할 수 있기 때문이다. -모듈 성능 향상을 위해 패키지 2와 3을 수정하더라도 외부에서는 모듈 사용 방법(패..
![[C++] 백준 14단계 - 10815번 문제 (숫자 카드)](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FBcKsy%2FbtsoqPfUDjK%2FVZRhJWvlxlf6Im1kzQU9uK%2Fimg.png)
문제설명 소스코드 #include #include #include using namespace std; int main() { ios_base::sync_with_stdio(false); //표준 스트림 동기화 해제 cin.tie(nullptr); //입출력 연결 끊기 int N, M; vector vec; cin >> N; for (int i = 0; i > input; vec.push_back(input); } sort(vec.begin(), vec.end()); cin >> M; for (int i = 0; i > input; cout
![[C++] 백준 13단계 - 1181번 문제 (단어 정렬)](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcBhD38%2Fbtsn0D8d3U7%2FzdI5QfHrhBJN13EqKtzoQK%2Fimg.png)
문제설명 소스코드 #include #include using namespace std; bool compare(string a, string b) { if (a.length() != b.length()) return a.length() > N; string* arr = new string[N]; for (int i = 0; i > arr[i]; sort(arr, arr + N, compare); for (int i = 0; i < ..
![[JAVA] 자바 표준 모듈, java.base 모듈](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FJBQ7r%2FbtsnLvQdVfX%2FEIcJKkt6E2gAFheKZkA9Ak%2Fimg.jpg)
이 게시글은 이것이 자바다(저자 : 신용권, 임경균)의 책과 동영상 강의를 참고하여 개인적으로 정리하는 글임을 알립니다. 자바 표준 모듈 표준 라이브러리는 Java 9부터 모듈화가 되어 아래의 그림처럼 Java 17 표준 모듈이 완성되었다. 화살표는 모듈 간의 의존 관계를 표시한다. java.base는 모든 모듈이 의존하는 기본이자 핵심 모듈이다. 또한 requires 하지 않아도 사용할 수 있다. java.base 모듈에는 java.lang, java.util, java.io 등의 핵심 패키지가 있고, java.lang을 제외하고 import 해서 사용할 수 있다. java.se는 JDK가 제공하는 모든 모듈을 제공하는 집합 모듈이다. 표준 라이브러리를 제한 없이 사용하고 싶을 경우에는 java.se를..
![[C++] 백준 13단계 - 18870번 문제 (좌표 압축)](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fdq13bf%2Fbtsoe0Dl95g%2Fmf0IuEQN0gL4bIkwCcrsbK%2Fimg.png)
문제설명 소스코드 #include #include #include using namespace std; int main() { ios_base::sync_with_stdio(false); //표준 스트림 동기화 해제 cin.tie(NULL); //입력과 출력 연결 끊기 vector original, tmp; int N; cin >> N; for (int i = 0; i > input; original.push_back(input); //원본 벡터에 입력받음 tmp.push_back(input); //임시 벡터에 입력받음 } sort(tmp.begin(), tmp.end()); //임시 벡터 정렬 tmp.erase(unique(tmp.begin(), tmp..
![[C++] 백준 13단계 - 11651번 문제 (좌표 정렬하기 2)](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fw3DBu%2FbtsnEWaCIkV%2Fw3T4PQgmztCzEIY1iXj4L0%2Fimg.png)
문제설명 소스코드 #include #include using namespace std; class XY { public: int x; int y; bool operator y y == arr.y) && (this->x > N; XY* arr = new XY[N]; for (int i = 0; i < N; ++i) cin ..
![[JAVA] 라이브러리 생성 및 불러오기](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdlVkNr%2FbtsnD1pBEL9%2FBKc7SECd3TpvF8qq8ZzMj0%2Fimg.jpg)
이 게시글은 이것이 자바다(저자 : 신용권, 임경균)의 책과 동영상 강의를 참고하여 개인적으로 정리하는 글임을 알립니다. 라이브러리는 프로그램 개발 시 활용할 수 있는 클래스와 인터페이스들을 모아 놓은 것을 말한다. 일반적으로 JAR(Java ARchive) 압축파일 형태로 존재한다. JAR 파일에는 클래스와 인터페이스의 바이트 코드 파일(~.class)들이 압축되어 있다. 라이브러리를 사용하면 개발 시간이 단축되고 유지보수가 용이하다. 나만의 라이브러리 생성하기 1. 새 프로젝트 생성 주의할 점은 Create module-info,java file에 체크를 하지 않는 것이다. 프로젝트 이름은 my_lib로 하였고, 패키지 pack1과 pack2를 생성하고 각 패키지에 A와 B 클래스를 선언했다. 2. ..