반응형 분류 전체보기91 [알고리즘 / Kotlin] 프로그래머스 - (8주차)최소직사각형 최소직사각형 문제 설명 명함 지갑을 만드는 회사에서 지갑의 크기를 정하려고 합니다. 다양한 모양과 크기의 명함들을 모두 수납할 수 있으면서, 작아서 들고 다니기 편한 지갑을 만들어야 합니다. 이러한 요건을 만족하는 지갑을 만들기 위해 디자인팀은 모든 명함의 가로 길이와 세로 길이를 조사했습니다. 아래 표는 4가지 명함의 가로 길이와 세로 길이를 나타냅니다. 가장 긴 가로 길이와 세로 길이가 각각 80, 70이기 때문에 80(가로) x 70(세로) 크기의 지갑을 만들면 모든 명함들을 수납할 수 있습니다. 하지만 2번 명함을 가로로 눕혀 수납한다면 80(가로) x 50(세로) 크기의 지갑으로 모든 명함들을 수납할 수 있습니다. 이때의 지갑 크기는 4000(=80 x 50)입니다. 모든 명함의 가로 길이와 세.. 2021. 10. 1. [Spring] 간단한 Rest API 만들어보기 최근에 업무상 필요한 API를 만들게 되었습니다. API 자체는 간단히 조회를 통해서 특정 주문 데이터를 가져오는 것인데 문제는 Spring에 대해서는 완전 기초적인 것만 알고 있는 상태였습니다. 이번에 API를 만들면서 배웠던 것들을 정리하려고 합니다. 개발 환경은 다음과 같았습니다. Spring Boot Hibernate Swagger PostgreSQL AWS 저는 Spring MVC Architecture에 맞게 Controller, Service, Repository 작업만 하면 되었습니다. API 동작 여부는 Swagger가 있어서 Swagger를 통해서 데이터가 제대로 들어오는지 확인하였습니다. 🔰 ApiController.java @RequestMapping(value = "/getOneI.. 2021. 9. 27. [알고리즘 / Kotlin] 프로그래머스 - 베스트앨범 베스트 앨범(Level 3) 문제 설명 스트리밍 사이트에서 장르 별로 가장 많이 재생된 노래를 두 개씩 모아 베스트 앨범을 출시하려 합니다. 노래는 고유 번호로 구분하며, 노래를 수록하는 기준은 다음과 같습니다. 속한 노래가 많이 재생된 장르를 먼저 수록합니다. 장르 내에서 많이 재생된 노래를 먼저 수록합니다. 장르 내에서 재생 횟수가 같은 노래 중에서는 고유 번호가 낮은 노래를 먼저 수록합니다. 노래의 장르를 나타내는 문자열 배열 genres와 노래별 재생 횟수를 나타내는 정수 배열 plays가 주어질 때, 베스트 앨범에 들어갈 노래의 고유 번호를 순서대로 return 하도록 solution 함수를 완성하세요. 제한 조건 genres[i]는 고유번호가 i인 노래의 장르입니다. plays[i]는 고유번호.. 2021. 9. 24. [운영체제] 프로세스 간 통신 앞서 프로세스 개념과 스케줄링에 대해 알아보았습니다. 그럼 여기서 서로 독립된 개체인 프로세스들끼리는 어떻게 데이터를 주고받는지 알아보겠습니다. 프로세스 간 통신의 종류 [프로세스 내부 데이터 통신] 하나의 프로세스 내에 2개 이상의 스레드(thread)가 존재하는 경우의 통신이다. 스레드(thread)는 전역 변수나 파일을 이용하여 데이터를 주고받는다. [프로세스 간 데이터 통신] 같은 컴퓨터에 있는 여러 프로세스끼리 통신할 때는 공용 파일 또는 운영체제가 제공하는 파이프를 사용해 통신합니다. [네트워크를 이용한 데이터 통신] 여러 대의 컴퓨터가 네트워크로 연결되어 있을 때, 소켓을 이용하여 데이터를 주고받습니다. 이렇게 소켓(socket)을 이용한 프로세스 간 통신을 네트워킹이라고 합니다. 같은 컴퓨.. 2021. 9. 22. [운영체제] 스케줄링 종류와 목적 🔷 정의 CPU 스케줄러는 프로세스가 생성된 후 종료될 때까지 모든 상태 변화를 조정하는 일을 합니다. 규모에 따라 고수준, 중간, 저수준 스케쥴링으로 구분됩니다. 우리가 어떤 일정을 계획할 때 일 단위로 우선순위에 따라 순서를 정하고 실행하는 과정이라고 생각하면 편합니다. 고수준 스케줄링 가장 큰 틀에서 이루어지는 CPU 스케줄링으로 작업 스케줄링(job scheduling)이라고도 합니다. 시스템 내의 전체 작업 수를 조절하는 것을 말합니다. 여기서 작업은 운영체제에서 다루는 일의 가장 큰 단위로, 1개 또는 여러 개의 프로세스로 이루어집니다. 고수준 스케줄링은 어떤 작업을 시스템이 받아들일지 또는 거부할지를 결정합니다. 일단 작업이 시작하면 시스템 자원을 사용하기에 기존 작업에 영향을 미칩니다. 이.. 2021. 9. 19. [Android] Intent로 데이터 전달 시 용량 제한 어느 날, 오후 급하게 회사 메신저로 CS 측에서 문의가 왔습니다. 앱에서 특정 매장의 메뉴를 선택하는 과정에서 앱이 뻗어버린다는 것이었습니다. 처음에 디버그도 찍어보고 관리자 페이지의 데이터를 대조하면서 확인해도 뚜렷한 오류 로그가 나오지 않아서 굉장히 난감했습니다. 헤매다가 결국 찾았는데 바로 인텐트에 담아서 보내는 데이터의 사이즈가 문제였습니다. 찾아보니 인텐트에 데이터를 담을 때, 대략 500KB 정도가 넘어가면 앱이 Crash가 날 수 있다고 합니다. 확인해보니 상품들의 옵션들이 계속 추가되면서 넘길 수 있는 데이터의 한계를 넘어선 듯했습니다. 해결 방법을 찾아보니 Intent를 사용할 때 기본적인 정보만을 담고 더 많은 데이터를 Intent에 담아야 한다면 다음과 같은 방법을 고려해보라고 했습.. 2021. 9. 16. 이전 1 ··· 7 8 9 10 11 12 13 ··· 16 다음 반응형