본문 바로가기

분류 전체보기411

쉽게 배우는 운영체제 : 운영체제의 개요 (1장) ■ 정의 · 편리한 인터페이스를 제공하고 시스템의 자원을 효율적으로 관리하는 프로그램 ■ 운영체제의 필요성 · OS가 없어도 작동은 가능하다 (ex. 에니악) · 컴퓨터의 성능 향상, 효율적인 자원 관리, 인터페이스를 제공하기 때문에! ■ 역할 1. 자원 관리 : 자원을 응용 프로그램에게 분배·회수한다. 2. 자원 보호 : 비정상적인 작업(다른 영역 침범 등)을 방지한다. 3. 하드웨어 인터페이스 제공 : 드라이버를 자동 설치함으로 HW 상관없이 사용 가능케 한다. 4. 사용자 인터페이스 제공 : 사용자가 운영체제를 편리하게 사용할 수 있게 한다. ■ 목표 1. 효율성 : 같은 자원으로 많은 작업을, 같은 양의 작업을 더 작은 자원으로 가능하게 한다. 2. 안정성 3. 확장성 : 다양한 자원의 추가·제거.. 2021. 9. 26.
[C++] 백준 1158번 : 요세푸스 문제 https://www.acmicpc.net/problem/1158 1158번: 요세푸스 문제 첫째 줄에 N과 K가 빈 칸을 사이에 두고 순서대로 주어진다. (1 ≤ K ≤ N ≤ 5,000) www.acmicpc.net 문제 풀이 https://codinghejow.tistory.com/91와 같은 문제이다! 느낀 점 이번에 코테 준비를 하면서 다시 풀어봤던 문제이다. 이번에 한번 정리함으로써 큐에 대한 이해도가 확실하게 향상된 것 같다. 코드 #include #include using namespace std; int n, k; queue q; void func(int n, int k) { for (int i = 1; i 2021. 9. 24.
[C++] 프로그래머스 : 카카오프렌즈 컬러링북 https://programmers.co.kr/learn/courses/30/lessons/1829 코딩테스트 연습 - 카카오프렌즈 컬러링북 6 4 [[1, 1, 1, 0], [1, 2, 2, 0], [1, 0, 0, 1], [0, 0, 0, 1], [0, 0, 0, 3], [0, 0, 0, 3]] [4, 5] programmers.co.kr 문제 풀이 기본적인 BFS 문제이다. BFS에 최대 범위와 map 그리고 시작 좌표를 입력받고 target 값과 같은 값을 찾는다. target 값과 같다면 해당 영역의 사이즈를 늘려주고 return 해주면 된다. BFS에는 방문 여부가 필수이므로 memset을 통해서 vistied의 값을 초기화해준다. 느낀 점 백준에서 풀었던 아기 상어 문제가 많이 도움이 되었다.. 2021. 9. 22.
[C++] 프로그래머스 : 오픈채팅방 https://programmers.co.kr/learn/courses/30/lessons/42888 코딩테스트 연습 - 오픈채팅방 오픈채팅방 카카오톡 오픈채팅방에서는 친구가 아닌 사람들과 대화를 할 수 있는데, 본래 닉네임이 아닌 가상의 닉네임을 사용하여 채팅방에 들어갈 수 있다. 신입사원인 김크루는 카카오톡 오 programmers.co.kr 문제 풀이 가장 중요한 것은 중간 과정이 필요가 없어 최종 로그만 보이면 된다는 것이다. ID 자체는 중복이 되면 안 되니 맵을 사용 해 ID : 별명 정보를 저장하였고, 벡터에는 ID : 명령 을 저장해서 최종 로그의 명령을 저장한다. stringstream을 이용해서 string을 잘라준다. tmp에는 명령어, id, 별명 순서로 저장되어 있다. 반복문을 통.. 2021. 9. 21.
[C++] 프로그래머스 : 문자열 압축 https://programmers.co.kr/learn/courses/30/lessons/60057 코딩테스트 연습 - 문자열 압축 데이터 처리 전문가가 되고 싶은 "어피치"는 문자열을 압축하는 방법에 대해 공부를 하고 있습니다. 최근에 대량의 데이터 처리를 위한 간단한 비손실 압축 방법에 대해 공부를 하고 있는데, 문 programmers.co.kr 문제 풀이 브루트 포스로 접근했다! 첫 반복문의 최대 반복 회수는 입력받은 문자열의 반만큼인데, 단위가 입력받은 문자열의 길이의 반 이상이라면 압축하는 의미가 없기 때문이다. 다음 반복문에선 비교를 통해서 반복되는지 확인해준다. 같다면 압축 회수(=cnt)를 증가시키고 아니라면 str에 입력해준다. 최종적으론 현재 answer와 str의 길이를 비교해서 .. 2021. 9. 20.
[C++] 백준 16236번 : 아기 상어 https://www.acmicpc.net/problem/16236 16236번: 아기 상어 N×N 크기의 공간에 물고기 M마리와 아기 상어 1마리가 있다. 공간은 1×1 크기의 정사각형 칸으로 나누어져 있다. 한 칸에는 물고기가 최대 1마리 존재한다. 아기 상어와 물고기는 모두 크기를 가 www.acmicpc.net 문제 풀이 문제에서 중요한 것은 2가지이다. 바로, BFS 구현과 우선순위를 정하는 것. 아기 상어의 정보와 물고기의 정보를 구조체로 구현했다. 구조체라는 틀에서 모든 정보를 가지기 위함이다. 함수 BFS에서는 배열 dx와 dy를 통해서 상하좌우를 한 칸씩 탐색한다. 탐색 도중에 나올 수 있는 경우는 4가지로, 1. 빈 칸인 경우 : 방문했음을 체크하고, 이동거리만 추가해준다. 2. 아기상.. 2021. 9. 15.