전체 글
-
Operating System - Computer System Structure카테고리 없음 2021. 3. 12. 22:15
📝Computer System Structure 📌 컴퓨터 시스템의 구조 컴퓨터 시스템 구조는 CPU, 메모리와 I/O 장치인 디스크, 키보드, 마우스, 모니터, 네트워크 장치 등으로 구성된다. 메모리 및 I/O 장치 등의 각 하드웨어 장치에는 컨트롤러가 붙어있다. 컨트롤러는 일종의 작은 CPU로서 각 장치를 제어한다. ex) 메모리 컨트롤러, 디스크 컨트롤러 프로그램이 수행되려면 그 프로그램은 메모리에 올라가있어야 한다. 운영체제 중 항상 메모리에 올라가 있는 부분은 전체 운영체제 중 핵심적인 부분에 한정되며, 이 부분을 커널(Kernel)이라고 한다. 📌 CPU 연산과 I/O 연산 I/O 장치의 연산은 I/O 장치 컨트롤러가 수행한다. 컴퓨터 내에서 수행되는 연산은 CPU가 담당한다. 입출력 장치와 ..
-
[백준] 3649 로봇 프로젝트Problem Solving/Baekjoon Online Judge 2020. 6. 3. 21:10
✔️ 문제 링크 https://www.acmicpc.net/problem/3649 3649번: 로봇 프로젝트 문제 상근이와 선영이는 학교 숙제로 로봇을 만들고 있다. 로봇을 만들던 중에 구멍을 막을 두 레고 조각이 필요하다는 것을 깨달았다. 구멍의 너비는 x 센티미터이고, 구멍에 넣을 두 조각의 길 www.acmicpc.net ✔️ 문제 이해 ◾ 로봇의 구멍을 2개의 레고 조각으로 막아야 한다. ◾ 구멍을 막을 2개의 레고 조각 길이의 합은 구멍의 너비와 정확히 일치해야한다. ◾ 테스트 케이스는 여러개이다. ◾ 각 테스트 케이스마다 구멍의 너비 x, 레고 조각의 개수 n, 각 레고 조각의 길이가 주어진다. ◾ 레고 조각의 길이는 나노미터 단위이다. ( 1cm = 10000000nm ) ◾ 각 테스트 케이..
-
[백준] 1342 행운의 문자열Problem Solving/Baekjoon Online Judge 2020. 6. 3. 15:55
✔️ 문제 링크 https://www.acmicpc.net/problem/1342 1342번: 행운의 문자열 민식이와 준영이는 자기 방에서 문자열을 공부하고 있다. 민식이가 말하길 인접해 있는 모든 문자가 같지 않은 문자열을 행운의 문자열이라고 한다고 한다. 준영이는 문자열 S를 분석하기 시작� www.acmicpc.net ✔️ 문제 이해 ◾ 주어진 문자열을 재배치해서 행운의 문자열을 몇 개 만들 수 있는지 알아내야한다. ◾ 행운의 문자열이란 인접해 있는 모든 문자가 같지 않은 문자열이다. ✔️ 설계 ◾ c++의 next_permuation을 사용하면 매우 쉽게 풀리는 문제이다. ◾ next_permutation은 순열을 만들때 중복을 제거해주기 때문에 중복관련해서 따로 구현하지 않아도 됐다. ◾ 시간복..
-
[백준] 7662 이중 우선순위 큐Problem Solving/Baekjoon Online Judge 2020. 6. 2. 21:22
✔️ 문제 링크 https://www.acmicpc.net/problem/7662 7662번: 이중 우선순위 큐 문제 이중 우선순위 큐(dual priority queue)는 전형적인 우선순위 큐처럼 데이터를 삽입, 삭제할 수 있는 자료 구조이다. 전형적인 큐와의 차이점은 데이터를 삭제할 때 연산(operation) 명령에 따라 우� www.acmicpc.net ✔️ 문제 이해 ◾ 이중 우선순위 큐를 구현하고 사용한 결과를 출력해야한다. 이중 우선순위 큐는 아래와 같이 정의된다. 데이터를 삽입한다. 우선순위가 가장 높은 데이터를 삭제한다. 우선순위가 가장 낮은 데이터를 삭제한다. ◾ 테스트 케이스가 주어지고 명령어들이 주어진다. 명령어는 아래와 같다. I 숫자 : 숫자를 우선순위 큐에 삽입한다. D 1 ..
-
[백준] 10282 해킹Problem Solving/Baekjoon Online Judge 2020. 6. 2. 20:30
✔️ 문제 링크 https://www.acmicpc.net/problem/10282 10282번: 해킹 문제 최흉최악의 해커 yum3이 네트워크 시설의 한 컴퓨터를 해킹했다! 이제 서로에 의존하는 컴퓨터들은 점차 하나둘 전염되기 시작한다. 어떤 컴퓨터 a가 다른 컴퓨터 b에 의존한다면, b가 감염�� www.acmicpc.net ✔️ 문제 이해 ◾ 테스트 케이스의 개수가 주어진다. ◾ 각 테스트 케이스마다 컴퓨터 개수 n, 의존성 개수 d, 해킹당한 컴퓨터의 번호 c가 주어진다. ◾ 이어서 d개의 줄에 정수 a, b, s가 주어진다. 이는 컴퓨터 b가 감염되면 s초 후 컴퓨터 a도 감염됨을 뜻한다. ◾ 각 테스트 케이스마다 총 감염되는 컴퓨터 수, 마지막 컴퓨터가 감염되기까지 걸리는 시간을 출력한다. ✔..
-
[Computer Network] SOP & CORSComputer Science/Computer Network 2020. 6. 2. 14:18
📝 Same-Origin Policy ◾ 자바스크립트 엔진 표준 스펙에 존재하는 보안 규칙이다. ◾ 브라우저는 스크립트 내()에서 초기화 되는 다른 도메인에 대한 HTTP 요청을 제한한다. ◾ 즉, 사용자가 특정 사이트에 접속중인 동시에 다른 사이트를 접근하는 것을 제한한다. ◾ XSS 기법(웹 사이트에 의도치 않은 스크립트를 넣는 기법)을 사용해 특정 정보를 다른 도메인으로 탈취하는 것을 방지할 수 있다. 📝 CORS (Cross Origin Resource Sharing) ◾ Client가 현재 접속한 사이트의 도메인 외에 다른 도메인에 접근할 수 있도록 처리 해주는 웹 브라우저 표준 기술이다. ◾ 웹 사이트를 백 엔드와 프론트엔드를 분리하여 API 묶는 방식으로 구현한 경우 백엔드 서버에 CORS ..
-
[백준] 16938 캠프 준비Problem Solving/Baekjoon Online Judge 2020. 6. 1. 22:27
✔️ 문제 링크 https://www.acmicpc.net/problem/16938 16938번: 캠프 준비 난이도가 10, 30인 문제를 고르거나, 20, 30인 문제를 고르면 된다. www.acmicpc.net ✔️ 문제 이해 ◾ N개의 문제가 있고, 각 문제에 대한 난이도는 정수로 수치화 되어있다. i번째 문제의 난이도는 Ai 이다. ◾ 주어진 N개의 문제에서 캠프에서 사용할 문제를 구해야한다. ◾ 문제를 고르는 조건은 아래와 같다. 캠프에 사용할 문제는 2문제 이상이어야한다. 고른 문제들의 난이도 합은 L보다 크거나 같고, R보다 작거나 같다. 고른 문제중 가장 어려운 문제 가장 쉬운 문제의 난이도 차이는 X보다 크거나 같아야 한다. ◾ 캠프에 사용할 문제를 고르를 방법의 수를 구해야한다. ✔️ ..
-
[Programmers] 괄호 변환Problem Solving/Programmers 2020. 6. 1. 20:30
✔️ 문제 링크 ◾ 2020 카카오 블라인드 채용 기출 문제이다. https://programmers.co.kr/learn/courses/30/lessons/60058 코딩테스트 연습 - 괄호 변환 카카오에 신입 개발자로 입사한 콘은 선배 개발자로부터 개발역량 강화를 위해 다른 개발자가 작성한 소스 코드를 분석하여 문제점을 발견하고 수정하라는 업무 과제를 받았습니다. 소스를 컴� programmers.co.kr ✔️ 문제 이해 ◾ '(' 와 ')' 로만 이루어진 문자열이 주어진다. ◾ '(' 의 개수와 ')' 의 개수가 같고, '('와 ')'의 괄호의 짝도 모두 맞을 경우에는 이는 올바른 괄호 문자열이다. ◾ 문자열이 주어졌을 때 올바른 괄호 문자열로 변환해서 반환하면 된다. ✔️ 설계 ◾ 이 문제는 내..