프로세스란?프로세스 : (메모리에 올려져서,) 실행중인 프로그램코드 이미지(바이너리) : 실행 파일응용 프로그램 ≠ 프로세스응용 프로그램은 여러 프로세스로 구성 가능프로세스라는 용어는 작업, task, job 이라는 용어와 혼용ex) 엑셀 프로그램과 엑셀 프로세스excel.exe(코드 이미지, 바이너리)와 엑셀 프로세스해당 파일은 코드로 구현이 되어있을 텐데, CPU가 이해할 수 있는 0과 1로 이루어진 파일로 만들어서 저장(바이너리)이를 실행하면 메모리에 올라감(프로세스)프로세스 스케쥴링프로세스를 언제 실행 시킬 건지1. 배치 처리 시스템(Batch Processing)초기 프로세스 스케쥴링 알고리즘으로 배치 처리 시스템을 채택여러 프로그램을 순차적으로 실행시킬 수 있도록어떤 프로그램은 실행하는데 시간..
문제https://www.acmicpc.net/problem/2805 풀이해당 문제는 높이의 최댓값을 구하는 문제로 매개변수 탐색을 통해 해결했습니다.매개변수 탐색으로 해결한 이유는 최댓값을 구하는 최적화 문제이며 이를 결정 문제로 해결하게되면 답을 도출하는 것이 수월하다고 생각했기 때문입니다. 방법은 다음과 같습니다.1. 수열을 입력받으며 배열에 저장하고, 그 값들 중 최댓값을 저장합니다.2. 매개변수 탐색을 하면서 문제에서 원하는 최댓값을 찾습니다.s = 0, e = 입력값들 중 최댓값, while(e > s)mid 값을 구해줍니다.(이때의 mid 값은 높이 입니다.)mid(높이) 값을 기준으로 들고 갈 나무를 셉니다.(N과 높이의 값이 크기 때문에 long 타입으로 리턴해줍니다.)c에서 구한 값 ≥..
문제https://www.acmicpc.net/problem/2412 풀이시작 위치에서 종료 위치까지 도달하기 위해 그래프 탐색을 이용해서 문제를 해결했습니다.해당 문제는 2차원 배열에 위치를 마킹하거나 방문처리를 하게되면 메모리 초과가 발생합니다.따라서 그래프 탐색을 위해 입력받은 값을 y(열)를 기준으로 list 배열에 x(행)값을 저장해두었고현재 행에서 갈 수 있는 열에 대해서, 다음으로 갈 수 있는 유효한 좌표를 탐색했습니다.최단거리를 구해주는 문제이기 때문에T열에 가장 먼저 도달했을 때의 cnt 값을 리턴해주었습니다.(도달하지 못했다면 -1 리턴) 코드import java.io.*;import java.util.*;public class Main { static int N, T; st..
문제https://www.acmicpc.net/problem/1920 풀이특정 값을 찾는 문제로 시간 복잡도를 고려하여 이분탐색 알고리즘을 활용해 문제를 해결했습니다. 입력 받은 수열을 배열에 넣고 정렬했습니다.타겟 값을 찾기 위해 이분탐색을 진행했습니다.s = 0, e = N-1로 두었습니다.while 조건은 e ≥ s로 두었습니다.(e == s 때 리턴해주기 위해)mid 값이 타겟값 보다 클 경우, (더 커질 필요가 없기 때문에) mid ~ e 까지의 후보군을 제외했습니다.이때 e = mid-1로 e값을 변경했습니다.e = mid로 설정하면 s와 e가 같아지는 상황에서 무한루프에 걸리게 되면서 시간 초과가 발생합니다.mid 값이 타겟값 보다 작을 경우, (더 작아질 필요가 없기 때문에) s ~ mid..