전체 글 691

[쉽게 배우는 운영체제] 2장 연습문제 정답

01 데이터의 이동 통로를 나타내는 것은?입력장치CPU출력장치버스02 CPU와 메모리 등 다양한 부품을 연결하고 전원을 공급해 주는 커다란 판을 나타내는 것은?메인메모리USB 드라이브메인보드SSD03 Fist In, First Out의 자료구조는?큐(queue)배열(array)연결 리스트(linked list)스택(stack)04 First In, First Out의 자료구조는?queuearraylinked liststack05 동적 메모리 할당을 사용하여 공간 관리가 편리한 자료구조는?큐배열연결 리스트스택06 폰노이만 구조에서 모든 프로그램은 ( )에 올라와야 실행할 수 있다.하드디스크메인메모리마우스키보드07 요리사 모형의 도마(작업 공간)와 가장 관련이 높은 것은?프로세스CPU저장장치메모리08 1초당..

CS 2024.10.14

[백준 01654] 랜선 자르기 [Python]

문제집에서 시간을 보내던 오영식은 박성원의 부름을 받고 급히 달려왔다. 박성원이 캠프 때 쓸 N개의 랜선을 만들어야 하는데 너무 바빠서 영식이에게 도움을 청했다.이미 오영식은 자체적으로 K개의 랜선을 가지고 있다. 그러나 K개의 랜선은 길이가 제각각이다. 박성원은 랜선을 모두 N개의 같은 길이의 랜선으로 만들고 싶었기 때문에 K개의 랜선을 잘라서 만들어야 한다. 예를 들어 300cm 짜리 랜선에서 140cm 짜리 랜선을 두 개 잘라내면 20cm는 버려야 한다. (이미 자른 랜선은 붙일 수 없다.)편의를 위해 랜선을 자르거나 만들 때 손실되는 길이는 없다고 가정하며, 기존의 K개의 랜선으로 N개의 랜선을 만들 수 없는 경우는 없다고 가정하자. 그리고 자를 때는 항상 센티미터 단위로 정수길이만큼 자른다고 가..

[백준 10816] 숫자 카드 2 [Python]

문제숫자 카드는 정수 하나가 적혀져 있는 카드이다. 상근이는 숫자 카드 N개를 가지고 있다. 정수 M개가 주어졌을 때, 이 수가 적혀있는 숫자 카드를 상근이가 몇 개 가지고 있는지 구하는 프로그램을 작성하시오.입력첫째 줄에 상근이가 가지고 있는 숫자 카드의 개수 N(1 ≤ N ≤ 500,000)이 주어진다. 둘째 줄에는 숫자 카드에 적혀있는 정수가 주어진다. 숫자 카드에 적혀있는 수는 -10,000,000보다 크거나 같고, 10,000,000보다 작거나 같다.셋째 줄에는 M(1 ≤ M ≤ 500,000)이 주어진다. 넷째 줄에는 상근이가 몇 개 가지고 있는 숫자 카드인지 구해야 할 M개의 정수가 주어지며, 이 수는 공백으로 구분되어져 있다. 이 수도 -10,000,000보다 크거나 같고, 10,000,0..

[쉽게 배우는 운영체제] 1장 연습문제 정답

01 소프트웨어는 ( )과 시스템 소프트웨어로 나뉜다. 괄호에 들어갈 적당한 용어는?응용 프로그램운영체제유틸리티문서 작성 소프트웨어02 운영체제의 주요 역할과 가장 거리가 먼 것은?인터페이스 제공컴퓨터 자원 관리그래픽 사용자원을 숨김03 운영체제의 목표와 가장 거리가 먼 것은?효율성복잡성안정성확장성04 운영체제의 구성 요소가 아닌 것은?유틸리티GUI드라이버커널05 나머지 셋과 종류가 다른 것은?드라이버GUI셸명령 프롬프트06 운영체제의 핵심 기능을 모아놓은 것은?유틸리티사용자 인터페이스디바이스 드라이버커널07 초기의 컴퓨터이며 전선을 바꿔 프로그래밍하는 시스템은?하드와이어링 시스템 (hard wiring system)일괄 작업 시스템 (batch job system)시분할 시스템 (time sharing..

CS 2024.10.12

[IAM] AWS IAM 사용자의 비밀번호 초기화/변경하기

배경IAM 사용자가 비밀번호를 분실해 관리자 계정으로 해당 사용자의 비밀번호를 초기화 해야하는 상황입니다.  1. 관리자 계정으로 로그인우선 IAM 사용자의 비밀번호를 초기화 하기 위해서는 관리자 계정(루트 사용자)로 접속해야합니다.IAM 사용자가 비밀번호를 분실한 상태에서 비밀번호를 초기화/변경하는 것은 관리자 계정으로만 가능합니다.2. IAM 대시보드 이동좌측 목록의 '액세스 관리' 중 '사용자' 메뉴를 선택합니다.생성된 IAM 사용자 목록이 나타납니다. 비밀번호를 변경할 사용자를 클릭합니다. 3. 콘솔 액세스 관리비선선택한 사용자의 상세 정보 페이지에서 "보안 자격 증명"탭으로 이동해 "콘솔 액세스 관리"를 클릭합니다. 4. 새로운 비밀번호 설정아래와 같은 콘솔 액세스 관리 페이지가 뜹니다. IAM..

Dev/AWS 2024.09.28

[백준 27440] 1로 만들기 3 [Python]

문제정수 X에 사용할 수 있는 연산은 다음과 같이 세 가지 이다.X가 3으로 나누어 떨어지면, 3으로 나눈다.X가 2로 나누어 떨어지면, 2로 나눈다.1을 뺀다.정수 N이 주어졌을 때, 위와 같은 연산 세 개를 적절히 사용해서 1을 만들려고 한다. 연산을 사용하는 횟수의 최솟값을 출력하시오.입력첫째 줄에 1보다 크거나 같고, 10^18보다 작거나 같은 정수 N이 주어진다.출력첫째 줄에 연산을 하는 횟수의 최솟값을 출력한다.풀이X가 최대 10^18이므로 기존의 DP 방식 풀이가 불가능하다.Queue와 HashMap을 사용해 풀이할 수 있다.Queue만 사용하면 시간 초과가 발생할 것이다. Dictionary에 이미 계산된 x에 대해 연산 횟수를 기록해주자.최소 연산 횟수를 저장할 visited를 선언해주자..

[백준 14517] 팰린드롬 개수 구하기 (Large) [Python]

문제팰린드롬(palindrome)이란 앞에서부터 읽으나 뒤에서부터 읽으나 같은 단어를 말한다. 'aba'나 'a'와 같은 단어는 팰린드롬이며, 'abaccbcb'나 'anavolimilana'와 같은 단어는 팰린드롬이 아니다.승수는 주어진 문자열의 부분수열 중 팰린드롬이 되는 부분수열의 개수를 알고싶어한다. (공집합은 포함하지 않는다)예를들어 'abb' 의 부분수열은 {'a'}, {'b'}, {'b'}, {'ab'}, {'ab'}, {'bb'}, {'abb'} 이고 이 가운데 팰린드롬은 {'a'}, {'b'}, {'b'}, {'bb'} 으로 4개 이다. 문자열이 주어졌을 때, 팰린드롬이 되는 부분수열의 개수를 출력하는 프로그램을 작성하시오.입력첫째 줄에 길이가 1000을 넘지 않는 문자열 S 가 주어진다..

[백준 14505] 팰린드롬 개수 구하기(Small) [Python]

문제팰린드롬(palindrome)이란 앞에서부터 읽으나 뒤에서부터 읽으나 같은 단어를 말한다. 'aba'나 'a'와 같은 단어는 팰린드롬이며, 'abaccbcb'나 'anavolimilana'와 같은 단어는 팰린드롬이 아니다.승수는 주어진 문자열의 부분수열 중 팰린드롬이 되는 부분수열의 개수를 알고싶어한다. (공집합은 포함하지 않는다)예를들어 'abb' 의 부분수열은 {'a'}, {'b'}, {'b'}, {'ab'}, {'ab'}, {'bb'}, {'abb'} 이고 이 가운데 팰린드롬은 {'a'}, {'b'}, {'b'}, {'bb'} 으로 4개 이다. 문자열이 주어졌을 때, 팰린드롬이 되는 부분수열의 개수를 출력하는 프로그램을 작성하시오.입력첫째 줄에 길이가 30을 넘지 않는 문자열 S가 주어진다. 문..

[백준 17436] 소수의 배수 [Python]

문제N개의 소수와 자연수 M이 주어진다. M 이하의 자연수 중에서 N개의 소수 중 적어도 하나로 나누어 떨어지는 수의 개수를 세어보자.입력첫째 줄에 N(1 ≤ N ≤ 10)과 M(1 ≤ M ≤ 1012)이 주어진다. 둘째 줄에는 N개의 소수가 주어진다. 입력으로 주어지는 소수는 100보다 작거나 같으며, 같은 소수가 두 번 이상 주어지지 않는다.출력첫째 줄에 M 이하의 자연수 중에서 N개의 소수 중 적어도 하나로 나누어 떨어지는 수의 개수를 출력한다.풀이M이하의 자연수 중에서 주어진 N개의 소수 중 적어도 하나로 나누어 떨어지는 수의 개수를 구해야 한다.즉, M이하의 자연수 중 N개의 소수들에 대한 배수로 이루어진 합집합의 원소 수를 구하는 문제다.이는 포함 배제의 원리를 사용해 쉽게 풀이할 수 있다. ..