분류 전체보기

모바일 앱 사용자 환경의 기본 개념 핸드폰을 사용하면서 앱을 잠시 떠나서 다른 앱을 사용하는 상황이 매우 흔하게 발생된다. 예를 들어 인스타와 카카오톡 같은 SNS를 사용하다가 전화가 오거나 알람이 울리면 사용 환경이 중단될 수 있다. 또, 스마트폰의 리소스는 제한되어 있으므로 운영체제가 공간이 필요하다고 판단되면 앱 프로세스를 종료하기도 한다. 이러한 상황이 발생하면 사용자 입장에서 난감하다. "아니 인스타 , 카톡 하다가 전화 왔다고 갑자기 앱이 종료된다고?!" 이렇듯 사용자 혹은 운영체제가 앱 구성요소를 제거할 수 있기 때문에 우리는 앱 데이터나 상태를 앱 구성요소에 저장하며 안되며, 앱 구성요소가 서로 종속되면 안 된다. --> 이것이 모바일 앱 사용자 환경의 기본개념이다. 클린 아키텍처(Clea..
📕문제 총 8개의 톱니를 가지고 있는 톱니바퀴 4개가 아래 그림과 같이 일렬로 놓여 있다. 또, 톱니는 N극 또는 S극 중 하나를 나타내고 있다. 톱니바퀴에는 번호가 매겨져 있는데, 가장 왼쪽 톱니바퀴가 1번, 그 오른쪽은 2번, 그 오른쪽은 3번, 가장 오른쪽 톱니바퀴는 4번이다. 이때, 톱니바퀴를 총 K번 회전시키려고 한다. 톱니바퀴의 회전은 한 칸을 기준으로 한다. 회전은 시계 방향과 반시계 방향이 있고, 아래 그림과 같이 회전한다. 톱니바퀴를 회전시키려면, 회전시킬 톱니바퀴와 회전시킬 방향을 결정해야 한다. 톱니바퀴가 회전할 때, 서로 맞닿은 극에 따라서 옆에 있는 톱니바퀴를 회전시킬 수도 있고, 회전시키지 않을 수도 있다. 톱니바퀴 A를 회전할 때, 그 옆에 있는 톱니바퀴 B와 서로 맞닿은 톱니..
📕문제 수빈이는 강호와 함께 스타크래프트 게임을 하고 있다. 수빈이는 뮤탈리스크 1개가 남아있고, 강호는 SCV N개가 남아있다. 각각의 SCV는 남아있는 체력이 주어져있으며, 뮤탈리스크를 공격할 수는 없다. 즉, 이 게임은 수빈이가 이겼다는 것이다. 뮤탈리스크가 공격을 할 때, 한 번에 세 개의 SCV를 공격할 수 있다. 첫 번째로 공격받는 SCV는 체력 9를 잃는다. 두 번째로 공격받는 SCV는 체력 3을 잃는다. 세 번째로 공격받는 SCV는 체력 1을 잃는다. SCV의 체력이 0 또는 그 이하가 되어버리면, SCV는 그 즉시 파괴된다. 한 번의 공격에서 같은 SCV를 여러 번 공격할 수는 없다. 남아있는 SCV의 체력이 주어졌을 때, 모든 SCV를 파괴하기 위해 공격해야 하는 횟수의 최솟값을 구하는..
📕문제 N줄에 0 이상 9 이하의 숫자가 세 개씩 적혀 있다. 내려가기 게임을 하고 있는데, 이 게임은 첫 줄에서 시작해서 마지막 줄에서 끝나게 되는 놀이이다. 먼저 처음에 적혀 있는 세 개의 숫자 중에서 하나를 골라서 시작하게 된다. 그리고 다음 줄로 내려가는데, 다음 줄로 내려갈 때에는 다음과 같은 제약 조건이 있다. 바로 아래의 수로 넘어가거나, 아니면 바로 아래의 수와 붙어 있는 수로만 이동할 수 있다는 것이다. 이 제약 조건을 그림으로 나타내어 보면 다음과 같다. 별표는 현재 위치이고, 그 아랫 줄의 파란 동그라미는 원룡이가 다음 줄로 내려갈 수 있는 위치이며, 빨간 가위표는 원룡이가 내려갈 수 없는 위치가 된다. 숫자표가 주어져 있을 때, 얻을 수 있는 최대 점수, 최소 점수를 구하는 프로그램..
📕문제 Day Of Mourning의 기타리스트 강토는 다가오는 공연에서 연주할 N개의 곡을 연주하고 있다. 지금까지 공연과는 다른 공연을 보여주기 위해서 이번 공연에서는 매번 곡이 시작하기 전에 볼륨을 바꾸고 연주하려고 한다. 먼저, 공연이 시작하기 전에 각각의 곡이 시작하기 전에 바꿀 수 있는 볼륨의 리스트를 만들었다. 이 리스트를 V라고 했을 때, V [i]는 i번째 곡을 연주하기 전에 바꿀 수 있는 볼륨을 의미한다. 항상 리스트에 적힌 차이로만 볼륨을 바꿀 수 있다. 즉, 현재 볼륨이 P이고 지금 i번째 곡을 연주하기 전이라면, i번 곡은 P+V [i]나 P-V [i]로 연주해야 한다. 하지만, 0보다 작은 값으로 볼륨을 바꾸거나, M보다 큰 값으로 볼륨을 바꿀 수 없다. 곡의 개수 N과 시작 볼..
Operating System Services Os services의 관점 OS는 프로그램과 하드웨어 사이에서, 프로그램의 실행을 위한 환경을 제공한다. OS는 유저와 시스템에게 다양한 서비스를 제공한다. OS Interfaces User interface Command Interpreter(CLI) shell이라고 불린다. 목표 : 다음 사용자가 지정한 명령을 수신하고 실행하는 것 GUI(Graphical User Interface) mouse, folder, icons, touch screen... etc. batch interface Program Execution 시스템은 프로그램을 메모리에 로드하고 , 실행하고, 실행을 끝낼 수 있어야 한다. I/O operation OS는 효율과 보안을 위해,..
📕문제 0과 1로 이루어진 2n x 2n 크기의 2차원 정수 배열 arr이 있습니다. 당신은 이 arr을 쿼드 트리와 같은 방식으로 압축하고자 합니다. 구체적인 방식은 다음과 같습니다. 당신이 압축하고자 하는 특정 영역을 S라고 정의합니다. 만약 S 내부에 있는 모든 수가 같은 값이라면, S를 해당 수 하나로 압축시킵니다. 그렇지 않다면, S를 정확히 4개의 균일한 정사각형 영역(입출력 예를 참고해주시기 바랍니다.)으로 쪼갠 뒤, 각 정사각형 영역에 대해 같은 방식의 압축을 시도합니다. arr이 매개변수로 주어집니다. 위와 같은 방식으로 arr을 압축했을 때, 배열에 최종적으로 남는 0의 개수와 1의 개수를 배열에 담아서 return 하도록 solution 함수를 완성해 주세요. 🛑제한사항 arr의 행의..
운영체제란? 하드웨어를 관리하는 프로그램이다. 컴퓨터 하드웨어어와 컴퓨터 사이의 중개인 역할을 하는 프로그램이다. 운영체제의 목적 User program을 실행하고 User Problem을 쉽게 해결하게 해 준다. 컴퓨터 사용을 더욱 쉽게 만들어준다. 컴퓨터 시스템을 편리하게 사용할 수 있는 환경을 제공한다. 컴퓨터의 하드웨어를 효율적인 방식으로 사용할 수 있게 한다. Computer System 4가지 구성요소 User, Computer Hardware, System/application programs, Operating System Os만이 하드웨어와 직접 소통할 수 있다. OS는 하드웨어와 시스템, 애플리캐이션 사이를 중개한다. OS View Points User View Home PC User ..
📕문제 메시는 축구 선수이다. 메시는 기분이 좋다. messi(1): Messi messi(2)​​: Messi Gimossi messi(3)​​​​​​: Messi Gimossi Messi messi(4): Messi Gimossi Messi Messi Gimossi messi(5): Messi Gimossi Messi Messi Gimossi Messi Gimossi Messi 메시의 외침은 피보나치수열과 유사하게 정의된다. messi(N)은 messi(N-1), 공백, messi(N-2)을 차례로 이어 붙여서 만든 문자열이다. 욱제는 N이 충분히 클 때, messi(N)의 M번째 글자가 뭔지 궁금해졌다. 📗입력 정수 M이 주어진다. (1 ≤ M ≤ 230-1) 📗출력 N이 충분히 클 때, messi..
재한
'분류 전체보기' 카테고리의 글 목록 (29 Page)