목록2024/05/23 (2)
자바칩
정리해 봅시다 1. 쓰레드와 프로세스의 차이를 이야기해 보세요.클래스를 실행하면 적어도 하나의 JVM이 시작되고, 자바 프로세스가 시작한다. 이 프로세스 안에서는 여러개의 쓰레드들이 수행된다. 어떤 프로세스든 간에 쓰레드가 하나 이상 수행된다.*쓰레드를 만든 이유프로세스가 하나 시작하려면 많은 자원이 필요하다. 만약 하나의 작업을 동시에 수행하려고 할 때 여러 개의 프로세스를 띄워서 실행하면 각각 메모리를 할당해 주어야만 한다. JVM은 기본적으로 아무런 옵션 없이 실행하면 OS마다 다르지만, 적어도 32MB~64MB의 물리 메모리를 점유한다. 그에 반해서, 쓰레드를 하나 추가하면 1MB 이내의 메모리를 점유한다. 그래서, 쓰레드를 "경량 프로세스(lightweight process)"라고도 부른다.그리..
난이도: Gold 4문제: https://www.acmicpc.net/problem/16234 이 문제는 같은 영역끼리 묶어서 그 영역의 인구수의 평균만큼 이동을 시켜야 한다.처음에는 영역 체크를 boolean 배열로 만들어서 조건에 해당하면 전부 true로 체크하여서 모두 같은 영역으로 처리하여 문제를 풀었는데, 그렇게 하면 안되고 영역 체크를 int 배열을 만들어서 국경선으로 구별하여 각각 다른 영역으로 처리해주어야 한다. 말로만 보면 이해가 안될 것이다. 그림을 보자. 초기 배열은 이렇다. 처음에는 국경선을 먼저 열어야 한다.국경선을 여는 조건은 인접한 칸(상, 하, 좌, 우)과의 인구 차이가 10명 이상 50명 이하일 경우이다. 인접한 칸과의 인구 차이가 10명 이상 50명 이하일 경우, 국경..