728x90

전체 글 108

[프로그래머스 lv 1] 3진법 뒤집기.py

https://programmers.co.kr/learn/courses/30/lessons/68935 코딩테스트 연습 - 3진법 뒤집기 자연수 n이 매개변수로 주어집니다. n을 3진법 상에서 앞뒤로 뒤집은 후, 이를 다시 10진법으로 표현한 수를 return 하도록 solution 함수를 완성해주세요. 제한사항 n은 1 이상 100,000,000 이하인 자연수 programmers.co.kr 자연수 n(10진법)을 3진법으로 변환 -> 이 변환 값을 앞뒤 반전 -> 다시 10진법으로 변환 이 것이 이 문제가 요하는 것이다. 입출력의 예는 다음과 같다. n result 45 7 125 229 우선 n을 3진법으로 만드는 과정은 몫이 3보다 작아질 때 까지 나눈 다음 나머지를 1의 자리부터 채우고, 마지막 ..

알고리즘 2022.01.12

[프로그래머스 lv 1] 내적.py

https://programmers.co.kr/learn/courses/30/lessons/70128 코딩테스트 연습 - 내적 길이가 같은 두 1차원 정수 배열 a, b가 매개변수로 주어집니다. a와 b의 내적을 return 하도록 solution 함수를 완성해주세요. 이때, a와 b의 내적은 a[0]*b[0] + a[1]*b[1] + ... + a[n-1]*b[n-1] 입니다. (n은 a, b의 programmers.co.kr 제시된 두 배열(a,b)의 값을 내적하면 되는 문제이다. 입출력의 예는 다음과 같다. a b result [1,2,3,4] [-3,-1,0,2] 3 [-1,0,1] [1,0,-1] -2 문제에서 두 배열의 길이는 같다고 제시했기 때문에, 같은 반복문 안에서 해결할 수 있다. 배열..

알고리즘 2022.01.11

[Server] AWS 인프라 구축 가이드 - 2 웹 서버와 웹 애플리케이션 서버

기본적으로 서버 인스턴스에는 서버 소프트웨어가 필요하다. (클라이언트의 요청을 받아 응답하거나, 요청을 처리하기 위해) 이 서버 소프트웨어는 크게 웹 서버와 웹 애플리케이션 서버로 구분되는데, 먼저 웹 서버는 다음과 같다. - 클라이언트에서 HTTP 프로토콜로 요청을 받고 정적인 파일로 응답 -> 정적인 내용 그대로 응답으로 주는 건 가능 하지만, 애플리케이션 코드를 실행한 결과를 줄 순 없음 - 따라서 서버에서 코드를 실행할 필요가 있는 애플리케이션은 웹 서버만으로는 실행할 수 없음 - EX) nginx, Apache... 웹 애플리케이션 서버(WAS-Web Application Server)에 대한 설명은 다음과 같다. - 클라이언트의 요청에 대하 코드 실행을 하고 이를 통해 동적인 응답을 만들어주는..

개인공부/BE 2022.01.10

1주차 정리(1/3~1/7)

첫 날은 자바 환경 정리와 기본적인 자바 언어를 학습했다. 약 2년전에 학부 수업에서 배운 적은 있었지만, 또 기초 부터 다루니 새로운 느낌이 들었다. 자바라는 언어의 기본 구성에 대해 다뤘는데 내용을 간략하게 정리하자면 다음과 같다. * 자바 소스 구조 package 선언구 import 선언구 class 이름{ 변수(데이터) 생성자 메소드(기능) } * 반드시 클래스 내부에 구현해야만 하는 요소들 1. 변수 선언 및 호출 - 데이터 - 타입 변수 명; - 타입 변수명 = 값; 2. 생성자 구현 및 호출 - 클래스명과 동일, (){} - 용도 : 객체 생성 - new 라는 객체 생성 키워드 - 객체 생성 문법 new 생성자([값]); - 클래스가 보유한 메소드 호출의 첫 단계는 객체 생성후 참조 변수로 ..

[고양이와 책을] 서비스 기획

백엔드 툴로 장고(Django)를 사용하고 싶어서 미니 프로젝트를 기획하게 되었다. 프론트 1명 백엔드 2명으로 이뤄졌고, 나는 백엔드를 담당하게 되었다. 기본 골자는 책을 선택하여 서평(독후감)을 작성하는 사이트 이다. 고양이를 좋아해서 고양이가 책을 추천해준다는 컨셉으로 사이트 디자인을 하였다. 사용자가 검색창에서 키워드를 입력하면, 해당 키워드에 맞는 책을 랜덤으로 5개 선택해 띄워준다. 사용자는 여기서 한 권을 선택해 책을 읽고, 이에 대한 서평을 작성할 수 있다. 프론트엔드는 리액트로, 백엔드는 장고를 이용하였다. DB는 SQLite를 이용하기로 했다. 우선은 로컬에서 작업하지만, 사이트가 완성되면 이를 오라클 클라우드 서버를 이용하여 클라우드 서버에 올릴 계획이다. 협업은 깃을 이용하고 사용하..

[프로그래머스 lv 1] 음양 더하기.py

https://programmers.co.kr/learn/courses/30/lessons/76501 코딩테스트 연습 - 음양 더하기 어떤 정수들이 있습니다. 이 정수들의 절댓값을 차례대로 담은 정수 배열 absolutes와 이 정수들의 부호를 차례대로 담은 불리언 배열 signs가 매개변수로 주어집니다. 실제 정수들의 합을 구하여 re programmers.co.kr 제시된 숫자 리스트와 그 해당하는 숫자의 부호 정보를 담고 있는 리스트를 이용하여 제시된 숫자에 부호를 적용해 전부 더한 값을 리턴하면 되는 문제이다. 입출력 예는 다음과 같다. absolutes signs result [4,7,12] [true,false,true] 9 [1,2,3] [false,false,true] 0 각 리스트에 정보..

알고리즘 2022.01.05

[프로그래머스 lv 1] 로또의 최고 순위와 최저 순위.py

https://programmers.co.kr/learn/courses/30/lessons/77484 코딩테스트 연습 - 로또의 최고 순위와 최저 순위 로또 6/45(이하 '로또'로 표기)는 1부터 45까지의 숫자 중 6개를 찍어서 맞히는 대표적인 복권입니다. 아래는 로또의 순위를 정하는 방식입니다. 1 순위 당첨 내용 1 6개 번호가 모두 일치 2 5개 번호 programmers.co.kr 민우가 선택한 6개의 숫자와 당첨 숫자를 비교하는 문제이다. 6개의 숫자 중 일부는 알아볼 수 없게 되어, 정확하게 당첨 숫자와의 일치는 알수 없게 되었지만, 당첨이 가능했던 최고 순위와 최저 순위를 생각해 보는 것이 문제의 핵심이다. 입출력 예는 다음과 같다. lottos win_nums result [44, 1,..

알고리즘 2022.01.04

[Server] AWS 인프라 구축 가이드 - 1 운영 서버 아키텍처들

자주 사용되는 운영 서버 아키텍처들에 대해 정리해보자 1. 단일 서버 - 가장 기본적인 구성 - 매우 단순한 구성인 만큼 테스트 서버나 간단한 애플리케이션을 구동할 때 사용 - 단점 1. 전체 서비스에 장애가 생길 확률 높음 2. 서버의 자원을 효율적으로 사용하기 어려움 3. 보안성이 떨어짐 4. 서버의 수를 여러대로 늘려서 자원을 확장하는 스케일 아웃(scale-out) 작업이 힘듬 2. 애플리케이션/데이터베이스 서버 분리 - 단일 서버 구성에서 DB만 별도로 뺀 구성 - 전체 서비스 장애 확률, 효율적인 자원 사용 어려움, 보안성 저하 등의 단점이 해결됨 - 단점 1. 구성이 복잡해짐 2. 서버사이의 지연시간과 네트워크 보안을 고려하기 시작해야함 3. 스케일 아웃은 여전히 힘듬 3. 서버 단위의 로드..

개인공부/BE 2022.01.03
728x90
반응형