문제 17299번: 오등큰수 첫째 줄에 수열 A의 크기 N (1 ≤ N ≤ 1,000,000)이 주어진다. 둘째에 수열 A의 원소 A1, A2, ..., AN (1 ≤ Ai ≤ 1,000,000)이 주어진다. www.acmicpc.net 문제 풀이 바로 앞 번 문제인 17298 오큰수를 이해하였다면 쉽게 풀 수 있는 문제이다. 앞의 문제는 단순히 수열의 값을 비교하여 큰 값이 있는지 확인하는 문제였지만, 이 문제는 각 수열과 중복되는 값을 카운트하여 카운트 되는 값보다 큰 값이 있는지 확인하는 문제이다.😉 코드 from sys import stdin from collections import Counter if __name__ == "__main__": stack = [] n = int(stdin.rea..
문제 17298번: 오큰수 첫째 줄에 수열 A의 크기 N (1 ≤ N ≤ 1,000,000)이 주어진다. 둘째에 수열 A의 원소 A1, A2, ..., AN (1 ≤ Ai ≤ 1,000,000)이 주어진다. www.acmicpc.net 문제 풀이 3 5 2 7의 수열이 주어지면, 한 원소를 기준으로 오른쪽에 큰 값이 있으면 최초의 큰 값을 기록하여 반환하는 문제이다. 만약 큰 값을 찾을 수 없다면 -1을 반환한다. 이 문제는 다른 stack의 문제와 달리 수열의 값을 stack에 넣는 것이 아닌, 각 인덱스를 통해 문제를 해결하는 방식으로 접근하면 쉽게 풀 수 있다. 또한, 파이썬으로 문제를 풀기 위해서는 각 처리마다 list를 append 할 경우 시간 초과가 발생하므로, 미리 list를 초기화해두고 ..
하드 디스크는 그림 1과 같은 구조로 구성되어 있다. 디스크 Access Time은 Seek time + Rotational delay + Transfer time으로 계산할 수 있다. 따라서 하드 디스크의 회전하는 특성을 고려하여 요청된 작업을 효율적으로 처리한다면, 작업 처리 시간을 감소 시킬 수 있을 것이다. 디스크 스케줄링 알고리즘 FCFS (First-Come First-Served) : 가장 먼저 요청된 작업을 먼저 처리하는 방식 SSTF (Shortest Seek Time First) : 요청된 작업 중 헤드의 움직임이 가장 짧게 움직이는 작업 부터 처리하는 방식 SCAN : 엘레베이터 처럼 한방향으로 탐색을 하고, 다시 다른 방향으로 탐색을 하는 방식 C-SCAN : SCAN 알고리즘에서 ..
가상 메모리를 효율적으로 관리하기 위해서는 프레임 할당을 어떻게 하느냐가 중요하다. 이에 프레임 할당 시 중요되는 관점은 다음과 같다. 최소 프레임 수 : 프로세스에 최소한으로 할당되는 프로임 수는 시스템에 따라 결정되며, 잘못된 최소 프레임 수는 좋지 않는 성능을 야기한다. 할당 정책 균등 할당 : 모든 프로세스가 균등하게 프레임을 할당 받는다. 비례적 할당 : 우선순위에 비례하여 프레임을 할당한다. Global, Local Allocation Global Allocation : 모든 프로세스가 페이지 교체의 대상이 될 수 있다. Local Allocation : 특정 프로세스 페이지에 대해서만 교체 디상으로 선정 한다. 쓰레싱 이전의 내용들을 보면, 메모리의 부족으로 가상 메모리를 사용하게 되어, p..