전체 글 364

프로그래머스 (Level 2) - 피로도

1. 문제 설명 일정 피로도를 사용해서 던전을 탐험할 수 있다. 각 던전마다 탐험을 시작하기 위해 필요한 "최소 필요 피로도"와 던전 탐험을 마쳤을 때 소모되는 "소모 피로도"가 있다. "최소 필요 피로도"는 던전을 탐험하기 위해 가지고 있어야 하는 최소한의 피로도이다. "소모 피로도"는 던전을 탐험한 후 소모되는 피로도를 나타낸다. "최소 필요 피로도" 가 80, "소모 피로도"가 20인 던전을 탐험하려면 유저는 남은 피로도는 80 이상이어여 하며 탐험한 후에는 피로도 20이 소모된다. 유저의 현재 피로도 k, 각 던전별 "최소 필요 피로도", "소모 피로도"가 담긴 2차원 배열 dungeons가 매개변수 유조가 탐험할 수 있는 최대 던전수를 return해라. 2. 제한사항 k는 1 이상 5,000 이..

프로그래머스 (Level 2) - 최소직사각형

1. 문제 설명 명함 지갑을 만드는 회사에서 지갑의 크기를 정하려고 한다. 명함 번호 가로 길이 세로 길이 1 60 50 2 30 70 3 60 30 4 80 40 가장 긴 가로 길이와 세로 길이가 각각 80, 70이기 때문에 80(가로) * 70(세로) 크기의 지갑으로 모두 넣을 수 있다. 하지만 2번 명함을 가로로 눕혀 수납한다면 80(가로) * 50(세로) 크기의 지갑으로 넣을 수 있다. 이때의 지갑 크기는 4000(80*50)이다. 모든 명함의 가로 길이와 세로 길이를 나타내는 2차원 배열 sizes가 매개 변수로 주어진다. 모든 명함을 수납할 수 있는 가장 작은 지갑을 만들 때, 지갑의 크기를 return해라 2. 제한사항 sizes의 길이는 1 이상 10,000 이하이다. sizes의 원소는 ..

3. Putty나 winSCP로 인스턴스 접속하기

접속하기전 탄력적 ip를 통해 ip를 고정시키고 접속해보자. 퍼블릭 IP는 접속할 때 사용하는 IP주소 이다. 이거는 유동 IP이다. 인스턴스 중지 후 다시 실행하면 바뀌게 된다. 탄력적 ip를 통해 ip주소를 고정시킨다. 탄력적 IP를 클릭하고 할당을 진행한다. 작업을 누르고 탄력적 ip 주소 연결을 누른다. 우리의 인스턴스와 ip주소연결을 해준다. 인스턴스를 골라준다. 탄력적 ip가 할당되었다. winSCP 연결 WinSCP :: Official Site :: Download WinSCP 5.21 Download WinSCP 5.21 is a major application update. New features and enhancements include: SSH core upgraded to PuT..

Server/AWS 2022.08.08

2. EC2에 보안그룹 설정하기

생성한 ec2를 선택하고 아래부분을 보면 이와 같이 뜬다. 보안을 눌러서 이동해주자. 만들어진 인스턴스의 보안그룹을 수정하자 인바운드 규칙 : 서버에서 접속할 때의 규칙 아웃바운드 규칙 : 서버에서 데이터가 나갈때의 규칙 아웃바운드 규칙은 딱히 수정할 필요가 없다. 보안그룹을 클릭해서 인바운드 규칙 설정으로 가보자 그리고 인바운트 규칙편집을 누른다. HTTP는 손님 즉, 클라이언트의 접속 루트이므로 포트를 0.0.0.0으로 설정해서 열어준다. SSH의 경우는 나만 이용할 것이므로 자신의 IP를 적는다. (나는 카페, 집 등등 여러 곳에서 하므로 0.0.0.0 으로 해줬다.) 그리고 저장한다. 대부분 접속 에러나 접근 권한 거부가 뜰 경우, 대부분은 보안그룹에서 해결할 수 있다.

Server/AWS 2022.08.08

1. AWS EC2 생성하기

EC2란 AWS에서 제공하는 클라우드컴퓨팅서비스이다. EC2 인스턴스 생성 https://ap-northeast-2.console.aws.amazon.com/ec2/v2/home?region=ap-northeast2#Instances: ap-northeast-2.console.aws.amazon.com AWS에 접속해서 인스턴스를 만들어보자 인스턴스 시작 → Ubuntu 20.04버전 쭉 그대로 진행한다. 스토리지 편집에 들어가 프리티어 최대 용량인 30으로 바꿔준다. 키페어를 생성하고 적용시켜준다. 잘 만들어 진 것을 확인할 수 있다.

Server/AWS 2022.08.08

프로그래머스 (Level 2) - 카펫

1. 문제 설명 카펫을 사러 갔다가 아래 그림과 같이 중앙에는 노란색, 테두리 1줄은 갈색으로 칠해져 있는 카펫을 발견했다. 집으로 돌아와서 노란색과 갈색으로 색칠된 격자의 개수는 기억했지만 전체 카펫의 크기는 기억하지 못했다. 본 카펫에서 갈색 격자의 수 brown, 노란색 격자의 수 yellow가 매개 변수로 주어진다. 이때, 카펫의 가로, 세로 크기를 순서대로 배열에 담아 return하라 2. 제한사항 갈색 격자의 수 brown은 8 이상 5,000 이하인 자연수이다. 노란색 격자의 수 yellow는 1 이상 2,000,000 이하인 자연수이다. 카펫의 가로 길이는 세로 길이와 같거나, 세로 길이보다 길다. 3. 입출력 예 brown yellow return 10 2 [4,3] 8 1 [3,3] 2..

8. APM 소스 설치 방법 & 패키지 매니저 설치 방법

1. Ubuntu 패키지 업데이트 #등록된 저장소 내 패키지 정보를 최신으로 업데이트 $ sudo apt update #저장소 내 패키지 정보를 바탕으로 시스템에 설치된 패키지들을 업그레이드 $ sudo apt upgrade #불필요해진 패키지를 자동으로 삭제한다. $ sudo apt autoremove 2. 필수 패키지 설치 $sudo su # apt-get update # apt-get upgrade #Apache2 설치 위한 패키지 # apt-get install make # apt-get install build-essential # apt-get install gcc # apt-get install —reinstall make # apt-get install libexpat1-dev # apt-..

Server/Local Server 2022.08.07

7. 우분투(Ubuntu)에 PHP 설치하기

필수 패키지 설치 & sudo su /usr/local# apt-get install libxml2-dev /usr/local# apt-get install libjpeg-dev /usr/local# apt-get install libpng-dev /usr/local# apt-get install libsqlite3-dev 소스설치 파일 다운로드 및 압축해제 /usr/local# wget /usr/local# tar xvfz php-8.1.0.tar.gz PHP 설치 (php-8.1.0) /usr/local# cd php-8.1.0 /usr/local/php-8.1.0# ./configure \\ --with-apxs2=/usr/local/apache2.4/bin/apxs \\ --enable-mysql..

Server/Local Server 2022.08.07

6. 우분투(Ubuntu)에 MySQL 설치하기

Ubuntu 20.04에 APM 소스 (수동) 설치하기 (MYSQL) 우선 Swap Memeory를 사용해야 한다. Swap Memory란? Swap Memory란 하드디스크의 일부 용량을 RAM처럼 사용할 수 있게 하는 방법입니다. 즉, 시스템에 RAM 용량이 부족해도 하드디스크를 활용하여 프로그램을 계속 실행시킬 수 있습니다. 예를 들어 A라는 컴퓨터에 설치된 RAM 용량이 2GB라고 가정해봅시다. A 컴퓨터에는 서버 프로그램을 구동하고자 하는데 필요한 RAM 용량이 3GB입니다. 서버를 구동하기 위해서 1GB의 RAM이 부족한 상황입니다. 이때 A에 2GB의 Swap Memory를 설정하면, 하드 디스크에서 2GB를 Swap Memory로 할당하고 A는 총 4GB(실제 RAM 2GB + Swap M..

Server/Local Server 2022.08.07

5. 우분투(Ubuntu)에 아파치(Apapche) 설치하기

아파치 소스설치 아파치란? www 서버용 소프트웨어이다. HTTP 아파치 서버라고도 불리고 HTTP 웹 서버이다. 리눅스나 윈도우 등 거의 모든 운영체제에서 사용할 수 있으며 구축이 쉽다. 소스설치, 수동설치, 컴파일설치: linux에서 소스를 직접 다운받아 컴파일하여 설치하는 것을 말한다. 패키지 설치와 반대 why? 패키지 설치로 간편하게 설치를 할 수 있지만 불필요하게 설치되는 파일들이 시스템의 자원을 사용하게 되고 패키지 단위로 설치되기에 관리적으로 문제가 발생 가능하다. /usr/local/에 설치하는 것이 관례 소스 파일은 /usr/local/src에 보관 설치한 VM의 Ubuntu를 실행시키고 경로는 /usr/local로 이동한다. 컴파일 에러 error: in 'home/kim/apr-1...

Server/Local Server 2022.08.07