연습문제 6

[프로그래머스] 야근 지수 by 파이썬 (Python)

https://school.programmers.co.kr/learn/courses/30/lessons/12927 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 난이도 LV 3 문제 설명 해야할 일이 works 배열에 각 일에 대한 필요 작업량이 저장되어 있다. 1시간에 작업량 1만큼을 할 수 있다. 퇴근 시간까지 남은시간 n 이 주어진다. 야근피로도는 퇴근 시간 이후 각 일의 남은 작업량의 제곱의 합이다. 가장 적은 야근 피로도를 계산해서 Return 해야한다. 접근 법 야근 피로도를 가장 낮추는 방법은 모든 일의 작업량을 균등하게 낮추는 것이다. 남은..

[프로그래머스] 최고의 집합 by 파이썬 (Python)

https://school.programmers.co.kr/learn/courses/30/lessons/12938 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 난이도 LV 3 문제 설명 자연수 n개로 이루어진 집합이 있다. 집합 원소들의 합은 s와 동일하다. 이때 가능한 집합 중 각 원소의 곱이 최대가 되도록 하는 집합을 Return해주어야 한다. 만약 집합이 존재하지 않는 경우에는 [-1]을 Return 한다. 접근법 우선 집합이 존재하지 않는경우는 집합 원소의 수(n)가 원소의 합 (s)보다 크면 집합이 없다. (원소가 자연수이기 때문에 각 원소의 ..

[쉽게 배우는 운영체제] 제 6장 교착 상태 연습문제 풀이 정답 (심화문제)

연습 문제 1. 2개 이상의 프로세스가 서로의 작업이 끝나기만 기다리며 작업을 더 이상 진행하지 못하는 상태를 무엇이라 하는가? - 교착 상태 2. 프로세스가 어떤 자원을 사용 중이고 어떤 자원을 기다리고 있는지를 나타내는 방향성이 있는 그래프를 무엇이라 하는가? - 자원 할당 그래프 3. 네 가지 교착 상태 필요조건에 대해 설명하시오. - 상호 배제 : 한 프로세스가 사용하는 자원은 다른 프로세스와 공유할 수 없는 배타적인 자원이여야 함 - 비선점 : 한 프로세스가 사용 중인 자원은 중간에 다른 프로세스가 빼앗을 수 없는 비선점 자원이어야 함 - 점유와 대기 : 프로세스가 어떤 자원을 할당받은 상태에서 다른 자원을 기다리는 상태여야 함 - 원형 대기 : 점유와 대기를 하는 프로세스 간의 관계가 원을 이..

[쉽게 배우는 운영체제] 제 3장 프로세스와 스레드 연습문제 풀이 정답 (심화문제)

연습문제 1. 프로그램이 프로세스가 되려면 운영체제로부터 무엇을 받아야 하는가? - 프로세스 제어블록 (PCB) 2. 프로세스의 상태 중 CPU를 할당받기 위해 기다리는 상태는 무엇인가? - 준비상태 3. 프로세스의 상태 중 입출력 작업을 하기위해 이동하는 상태는 무엇인가? - 대기상태 4. CPU 스케줄러가 준비 상태에 있는 프로세스 중 하나를 골라 CPU를 할당하는 작업을 무엇이라고 하는가? - 디스패치 5. 유닉스에서 ctrl + r 키를 눌러 프로세스가 중단되면 프로세스는 어떤 상태로 바뀌는가? - 휴식상태 6. 실행 상태에서 하나의 프로세스가 나가고 새로운 프로세스가 들어오는 상황을 무엇이라고 하는가? - 문맥교환 7. 실행중인 프로세스로부터 새로운 프로세스를 복사하는 시스템 호출은 무엇인가? ..

[쉽게 배우는 운영체제] 제 2장 컴퓨터의 구조와 성능 향상 연습문제 풀이 정답 (심화문제)

제 2장 컴퓨터의 구조와 성능 향상 연습문제 1. CPU의 구성에 대해 설명하시오. - Data를 연산하는 산술논리 연산장치(ALU), 작업을 지시하는 제어 장치, Data를 임시로 보관하는 레지스터로 구성 2. 폰노이만 구조의 가장 중요한 특징을 설명하시오. - 모든 프로그램은 메모리에 올라와야지 실행 가능하다. 3. 버스의 종류를 나열하시오. - 제어버스, 주소버스, DATA버스 4. 단방향 버스에 대해 설명하시오. - 자료가 한방향으로만 전달되는 버스 5. 다음에 실행할 명령어의 주소를 가지고 있는 레지스터는 무엇인가? - 프로그램 카운터 (PC) 6. (문제수정) 현재 실행중인 명령어를 보관하는 레지스터는 무엇인가? - 명령어 레지스터(IR) 7. 메모리의 주소를 보관하는 레지스터는 무엇인가? -..

[쉽게 배우는 운영체제] 제 1장 운영체제의 개요 연습문제 풀이 정답 (심화문제)

연습문제 1. 사용자에게 편리한 인터페이스 환경을 제공하고 컴퓨터 시스템의 자원을 효율적으로 관리하는 소프트웨어는 무엇인가? - 운영체제 2. 가전제품과 같이 cpu의 성능이 낮고 메모리 크기도 작은 시스템에 내장하도록 만든 운영체제를 무엇이라고 하는가? - 임베디드 운영체제 3. 사용자가 원하는 기능을 수행하기 위해 컴퓨터 자원을 사용하는 소프트웨어는 무엇인가? - 응용 프로그램 4. 운영체제가 없는 컴퓨터에서는 어떤 문제가 발생하는지 설명하시오. - 컴퓨터를 망가트릴 수도 있음, 새로운 기능구현 불가능(처음 설계한대로만 사용가능), 복잡한 기능 구현 어려움 5. 기계와 사용자 사이에 명령을 전달하고 처리한 결과를 알려주는 것을 무엇이라고 하는가? - 인터페이스 6. 프로그램과 데이터를 한번에 입력한 ..