1620번-나는야 포켓몬 마스터 이다솜 | 스택 오버플로우 by 지역변수 (C++)
·
Programming/C++ - 백준
문제풀이입력값이 숫자인 경우와 문자인 경우를 분류해 구하는게 까다로운 부분이다. 1. 입력값이 숫자인 경우  string 배열을 이용해 문자열을 저장해둔다.  입력을 받을 때 for문으로 0부터 배열에 저장되었기 때문에, -1 을 해주었다. string name[100001]; // 입력이 숫자인 경우에 사용 if (isdigit(str[0]) != 0) { // isdigit == 0: 문자 | isdigit != 0: 숫자 cout   2. 입력값이 문자인 경우  key값과 value값이 함께 저장되는 map을 이용한다.  이 문제는 입력값이 많기 때문에 시간 초과를 주의해야 하므로 map을 선택했다.    문자가 입력된 경우, map에서 key 값을 찾아 전달하도록 한다.  이때, for문으..
Large files detected.
·
Back-end/Django
요즘 전공 팀프로젝트로 연령층을 분석해 키오스크를 크고, 작게 보여주는 서비스를 개발하고 있다.깃에 장고 서버 파일을 올리던 중, 오류가 발생했는데 바로 'Large files detected' 용량이 큰 파일 때문이었다. 머신러닝을 진행하면 저장되는 .h5 파일이 100mb를 넘어가 발생하는 오류였다. 이를 해결하기 위해서는 LFS을 사용해야한다. 그 전, 커밋내역을 삭제해주어야 한다. mixed reset을 사용해서, 내용은 그대로 두고 커밋 메세지만 삭제한다.$ git reset --mixed {1번 commit hash}$ git reset --soft HEAD^ (초반에는, 커밋 메세지 내의 파일만 삭제하는 방법을 찾아보았으나, 오히려 더 복잡하여 리셋을 하는 방법을 택했다.) 리셋에는 세 가지..
[AWS] DB | RDS, DynamoDB
·
Cloud
☁ AWS Cloud Clubs(ACC)_6주차☁ DB | RDS, DynamoDBAmazon RDS(Relational Database Service)클라우드에서 데이터베이스를 자동으로 구성, 유지 관리하는 SaaS 기반 서비스즉각적인 컴퓨팅 규모 조정 가능, 스토리지 규모 조정 간편DB 인스턴스의 복제본을 하나 이상 생성해 대량 애플리케이션 읽기 트래픽을 처리6개의 DB 엔진을 지원 >  필요에 맞는 DB 엔진 선택 가능Amazon Aurora: MySQL 및 PostgreSQL 호환 관계형 데이터 베이스MySQL: 세계적으로 가장 많이 사용되는 오픈 소스 관계형 데이터 베이스PostgreSQL: 오픈 소스 관계형 데이터 베이스MariaDB: MySQL의 수정된 버전으로, JSON 데이터 처리를 다르..
[AWS] Storage | S3, EFS, EBS + Hands on
·
Cloud
보호되어 있는 글입니다.
[AWS] Network | Cloudfront, ELB
·
Cloud
☁ AWS Cloud Clubs(ACC)_4주차☁ Network | Cloudfront, ELB CloudFront콘텐츠 전송 네트워크(CDN, Content Delivery Network) 서비스 CDN 서비스란, 클라이언트의 콘텐츠 요청으로 서버에서 받아온 콘텐츠를 캐싱하고, 같은 요청이 오면 캐싱해 둔 것을 제공하는 서비스 데이터 사용량이 많은 애플리케이션의 웹 페이지 로드 속도를 높이는 상호 연결된 서버 네트워크캐싱이란, 더 빠른 데이터 액세스를 위해 동일한 데이터의 여러 복사본을 저장하는 프로세스짧은 지연 시간과 빠른 전송 속도로 안전하게 콘텐츠를 전송캐싱의 종류Static Caching (정적 캐싱)Dynamic Caching (동적 캐싱)CDN 장점페이지 로드 시간 단축대역폭 비용 절감콘텐츠..
[AWS] Container | Docker, ECS
·
Cloud
☁ AWS Cloud Clubs(ACC)_3주차☁ Container | Docker, ECS Container애플리케이션 코드, 라이브러리 및 클라우드에서 실행하기 위해 필요한 기타 종속성이 포함된 소프트웨어 코드 패키지소프트웨어 및 모든 종속성을 어디서나 실행할 수 있는 단일 파일로 패키징함코드, 런타임, 라이브러리, 환경 변수, 구성 파일 등 소프트웨어를 실행하는 데 필요한 모든 것을 포함하는 이미지 파일👍: 애플리케이션 배포 간소화, 유연성, 복원력, 확장성 Virtual Machine vs Container  hypervisor는 guest OS 를 사용할 수 있게 해주는 역할이고,가상머신은 guest OS 때문에 무겁다하는 거임! DOCKER 는 리눅스와 같이 다같은 OS를 쓰게 해줘서 가볍다..
[AWS] Computing Service | EC2, Lightsail
·
Cloud
☁ AWS Cloud Clubs(ACC)_2주차☁ Computing Service | EC2, Lightsail 인스턴스란?타사 클라우드 서비스에서 제공하는 서버 리소스 (= 가상 서버)기업이 자체적으로 IT 인프라를 소유하고 관리 및 운영하는 경우 (On-Premise), 물리적 서버 리소스를 관리하고 유지할 수도 있지만, 비용이 많이 들고 비효율적따라서, 클라우드 제공업체는 데이터 센터에서 하드웨어를 유지 관리하고 인스턴스라는 형태로 컴퓨팅 리소스에 대한 가상 액세스를 제공 EC2가상화 서버 서비스. 아마존의 각국 데이터 센터에서 서버용 컴퓨터를 임대하는 것AWS에서 가장 기본적이고 널리 쓰이며, VM(Virtual Macine)으로 제공됨.크기를 조정할 수 있는 컴퓨팅 용량을 제공하는 웹 서비스AW..
1764번 - 듣보잡 | 시간초과, binary search (C++)
·
Programming/C++ - 백준
문제 풀이 1. 처음에는 이중 for문을 이용해 풀이했다. 당연히 시간초과 발생 O(n2) ➡ 애초에 최댓값이 50만씩이여서, 50만 x 50만 = 시간 초과가 날 수 밖에 없었음.. 2. 시간초과 문제를 해결하기 위해서는, map 또는 binary search를 사용해야 한다. ➡ map: O(logn), Red-Black Tree, key - valued의 pair로 저장된다. 중복 허용 X ➡ binary search: O(logn), 꼭 정렬을 먼저 해줘야 한다. 나는 binary search를 이용해 문제를 해결했다. 추가로, vector는 데이터 순차 저장이므로 검색 속도가 느리다. 검색에는 hash_map(unordered_map)과 map을 사용하는 것이 빠르다. hash_map(unord..
[백준] 10816번 : 숫자 카드 2 | binary search & unordered map (C++)
·
Programming/C++ - 백준
문제 풀이 binary_search를 이용해 풀이했다. O(logn) 문제를 맞춘 후, unordered_map을 이용해도 가능한 것을 확인해 사용해보았다. O(1) 이 문제를 풀며 놀라웠던 점은 시간복잡도가 O(logn)인 binary_search가 O(1)인 unordered_map보다 빨랐다는 것이다. 찾아보니 이에 대한 질문 글이 있어 답변을 가져왔다. 현실 세계에서는 N이 무한히 큰 경우가 거의 없기 때문에 O(lgN)과 O(1) 정도의 차이는 N의 크기에 따라 시간복잡도에 붙은 상수로 자주 뒤집어집니다. 가령, 최소한의 비교로 원하는 수를 찾아야 하는 가상의 문제가 있다고 합시다. N에 관계없이 항상 50번의 비교로 수를 찾는 어떤 O(1) 알고리즘과 N에 대해 ceil(lgN)번의 비교를 하..