rosyhuedoyou의 등록된 링크

 rosyhuedoyou로 등록된 티스토리 포스트 수는 157건입니다.

[프로그래머스] 문자열 내 마음대로 정렬하기 [내부링크]

문제 설명 문자열로 구성된 리스트 strings와, 정수 n이 주어졌을 때, 각 문자열의 인덱스 n번째 글자를 기준으로 오름차순 정렬하려 합니다. 예를 들어 strings가 ["sun", "bed", "car"]이고 n이 1이면 각 단어의 인덱스 1의 문자 "u", "e", "a"로 strings를 정렬합니다. 제한사항 strings는 길이 1 이상, 50이하인 배열입니다. strings의 원소는 소문자 알파벳으로 이루어져 있습니다. strings의 원소는 길이 1 이상, 100이하인 문자열입니다. 모든 strings의 원소의 길이는 n보다 큽니다. 인덱스 1의 문자가 같은 문자열이 여럿 일 경우, 사전순으로 앞선 문자열이 앞쪽에 위치합니다. 입출력 예 설명 입출력 예 #1 "sun", "be..

[프로그래머스] 크기가 작은 부분 문자열 [내부링크]

문제 설명 숫자로 이루어진 문자열 t와 p가 주어질 때, t에서 p와 길이가 같은 부분문자열 중에서, 이 부분문자열이 나타내는 수가 p가 나타내는 수보다 작거나 같은 것이 나오는 횟수를 return하는 함수 solution을 완성하세요. 예를 들어, t="3141592"이고 p="271" 인 경우, t의 길이가 3인 부분 문자열은 314, 141, 415, 159, 592입니다. 이 문자열이 나타내는 수 중 271보다 작거나 같은 수는 141, 159 2개 입니다. 제한사항 1 ≤ p의 길이 ≤ 18 p의 길이 ≤ t의 길이 ≤ 10,000 t와 p는 숫자로만 이루어진 문자열이며, 0으로 시작하지 않습니다. 입출력 예 설명 입출력 예 #1 t = "500220839878" p = "7" p의 ..

[프로그래머스] 숫자 문자열과 영단어 [내부링크]

문제 설명 네오와 프로도가 숫자놀이를 하고 있습니다. 네오가 프로도에게 숫자를 건넬 때 일부 자릿수를 영단어로 바꾼 카드를 건네주면 프로도는 원래 숫자를 찾는 게임입니다. 다음은 숫자의 일부 자릿수를 영단어로 바꾸는 예시입니다. 1478 → "one4seveneight" 234567 → "23four5six7" 10203 → "1zerotwozero3" 이렇게 숫자의 일부 자릿수가 영단어로 바뀌어졌거나, 혹은 바뀌지 않고 그대로인 문자열 s가 매개변수로 주어집니다. s가 의미하는 원래 숫자를 return 하도록 solution 함수를 완성해주세요. 제한사항 1 ≤ s의 길이 ≤ 50 s가 "zero" 또는 "0"으로 시작하는 경우는 주어지지 않습니다. return 값이 1 이상 2,000,000,..

[프로그래머스] 비밀지도 [내부링크]

문제 설명 네오는 평소 프로도가 비상금을 숨겨놓는 장소를 알려줄 비밀지도를 손에 넣었다. 그런데 이 비밀지도는 숫자로 암호화되어 있어 위치를 확인하기 위해서는 암호를 해독해야 한다. 다행히 지도 암호를 해독할 방법을 적어놓은 메모도 함께 발견했다. 지도는 한 변의 길이가 n인 정사각형 배열 형태로, 각 칸은 "공백"(" ") 또는 "벽"("#") 두 종류로 이루어져 있다. 전체 지도는 두 장의 지도를 겹쳐서 얻을 수 있다. 각각 "지도 1"과 "지도 2"라고 하자. 지도 1 또는 지도 2 중 어느 하나라도 벽인 부- 분은 전체 지도에서도 벽이다. 지도 1과 지도 2에서 모두 공백인 부분은 전체 지도에서도 공백이다. "지도 1"과 "지도 2"는 각각 정수 배열로 암호화되어 있다. 암호화된 배열은 지도의..

[프로그래머스] 암호 해독 [내부링크]

문제 설명 군 전략가 머쓱이는 전쟁 중 적군이 다음과 같은 암호 체계를 사용한다는 것을 알아냈습니다. 암호화된 문자열 cipher를 주고받습니다. 그 문자열에서 code의 배수 번째 글자만 진짜 암호입니다. 문자열 cipher와 정수 code가 매개변수로 주어질 때 해독된 암호 문자열을 return하도록 solution 함수를 완성해주세요. 제한사항 1 ≤ cipher의 길이 ≤ 1,000 1 ≤ code ≤ cipher의 길이 cipher는 소문자와 공백으로만 구성되어 있습니다. 공백도 하나의 문자로 취급합니다. 입출력 예 설명 입출력 예 #1 "dfjardstddetckdaccccdegk" 의 4번째, 8번째, 12번째, 16번째, 20번째, 24번째 글자를 합친 "attack"을 retu..

[프로그래머스] 369게임 [내부링크]

문제 설명 머쓱이는 친구들과 369게임을 하고 있습니다. 369게임은 1부터 숫자를 하나씩 대며 3, 6, 9가 들어가는 숫자는 숫자 대신 3, 6, 9의 개수만큼 박수를 치는 게임입니다. 머쓱이가 말해야하는 숫자 order가 매개변수로 주어질 때, 머쓱이가 쳐야할 박수 횟수를 return 하도록 solution 함수를 완성해보세요. 제한사항 1 ≤ order ≤ 1,000,000 입출력 예 설명 입출력 예 #1 3은 3이 1개 있으므로 1을 출력합니다. 입출력 예 #2 29423은 3이 1개, 9가 1개 있으므로 2를 출력합니다. 내 풀이 def solution(order): answer = 0 while (1) : value = order % 10 order = order // 10 i..

Jenkins SSH 연결 시간 초과 에러 [내부링크]

c 문제 발생 배포 완료 후 슬랙으로 알림이 와야되는데 어느 순간부터 알림이 오지 않기 시작했다 그래서 로그를 까보니 다음과 같은 메세지가 적혀있었다 ERROR: Exception when publishing, exception message [Exec timed out or was interrupted after 120,000 ms] Build step 'Send build artifacts over SSH' changed build result to UNSTABLE Send build artifacts over SSH단계에서 발생한 에러였는데 SSH를 통해서 명령을 내리고 작업이 끝나길 기다리다가 timeout이 발생한 것이었다 해결 대기 시간을 늘려주거나 시간 초과 제한을 없애면 간단하게 해결..

[프로그래머스] 삼총사 [내부링크]

문제 설명 한국중학교에 다니는 학생들은 각자 정수 번호를 갖고 있습니다. 이 학교 학생 3명의 정수 번호를 더했을 때 0이 되면 3명의 학생은 삼총사라고 합니다. 예를 들어, 5명의 학생이 있고, 각각의 정수 번호가 순서대로 -2, 3, 0, 2, -5일 때, 첫 번째, 세 번째, 네 번째 학생의 정수 번호를 더하면 0이므로 세 학생은 삼총사입니다. 또한, 두 번째, 네 번째, 다섯 번째 학생의 정수 번호를 더해도 0이므로 세 학생도 삼총사입니다. 따라서 이 경우 한국중학교에서는 두 가지 방법으로 삼총사를 만들 수 있습니다. 한국중학교 학생들의 번호를 나타내는 정수 배열 number가 매개변수로 주어질 때, 학생들 중 삼총사를 만들 수 있는 방법의 수를 return 하도록 solution 함수를 완성..

[프로그래머스] 가까운 수 [내부링크]

문제 설명 정수 배열 array와 정수 n이 매개변수로 주어질 때, array에 들어있는 정수 중 n과 가장 가까운 수를 return 하도록 solution 함수를 완성해주세요. 제한사항 1 ≤ array의 길이 ≤ 100 1 ≤ array의 원소 ≤ 100 1 ≤ n ≤ 100 가장 가까운 수가 여러 개일 경우 더 작은 수를 return 합니다. 입출력 예 설명 입출력 예 #1 3, 10, 28 중 20과 가장 가까운 수는 28입니다. 입출력 예 #2 10, 11, 12 중 13과 가장 가까운 수는 12입니다. 내 풀이 def solution(array, n): min = 101 answer = 0 array.sort() for num in array : temp = abs(num - n..

[프로그래머스] 삼각형의 완성조건 (1) [내부링크]

문제 설명 선분 세 개로 삼각형을 만들기 위해서는 다음과 같은 조건을 만족해야 합니다. 가장 긴 변의 길이는 다른 두 변의 길이의 합보다 작아야 합니다. 삼각형의 세 변의 길이가 담긴 배열 sides이 매개변수로 주어집니다. 세 변으로 삼각형을 만들 수 있다면 1, 만들 수 없다면 2를 return하도록 solution 함수를 완성해주세요. 제한사항 - sides의 원소는 자연수입니다. - sides의 길이는 3입니다. - 1 ≤ sides의 원소 ≤ 1,000 입출력 예 설명 입출력 예 #1 입력 : [1, 2, 3] 출력 : 2 가장 큰 변인 3이 나머지 두 변의 합 3과 같으므로 삼각형을 완성할 수 없습니다. 따라서 2를 return합니다. 입출력 예 #2 입력 : [3, 6, 2] 출력..

[프로그래머스] 중복된 문자 제거 [내부링크]

문제 설명 문자열 my_string이 매개변수로 주어집니다. my_string에서 중복된 문자를 제거하고 하나의 문자만 남긴 문자열을 return하도록 solution 함수를 완성해주세요. 제한사항 1 ≤ my_string ≤ 110 my_string은 대문자, 소문자, 공백으로 구성되어 있습니다. 대문자와 소문자를 구분합니다. 공백(" ")도 하나의 문자로 구분합니다. 중복된 문자 중 가장 앞에 있는 문자를 남깁니다. 입출력 예 설명 입출력 예 #1 "people"에서 중복된 문자 "p"와 "e"을 제거한 "peol"을 return합니다. 입출력 예 #2 "We are the world"에서 중복된 문자 "e", " ", "r" 들을 제거한 "We arthwold"을 return합니다. ..

[프로그래머스] 이상한 문자 만들기 [내부링크]

문제 설명 문자열 s는 한 개 이상의 단어로 구성되어 있습니다. 각 단어는 하나 이상의 공백문자로 구분되어 있습니다. 각 단어의 짝수번째 알파벳은 대문자로, 홀수번째 알파벳은 소문자로 바꾼 문자열을 리턴하는 함수, solution을 완성하세요. 제한사항 문자열 전체의 짝/홀수 인덱스가 아니라, 단어(공백을 기준)별로 짝/홀수 인덱스를 판단해야합니다. 첫 번째 글자는 0번째 인덱스로 보아 짝수번째 알파벳으로 처리해야 합니다. 입출력 예 설명 입출력 예 #1 s = "try hello world" return = "TrY HeLlO WoRlD" 내 풀이 def solution(s): result = ""; for word in s.split(' ') : for index in range(0,l..

Jenkins Github 브랜치 매개변수를 사용해 빌드 [내부링크]

1. 플러그인 설치 Dashboard > Jenkins 관리 > Plugins로 이동한다 Available plugins에서 Git Parameter Plug-In을 다운로드 받아준다 다운 완료가 되면 사진과 같이 installed plugins 에서 해당 플러그인을 확인 할 수 있다 2. Jenkins item 매개 변수 설정 Dashboard > Jenkins item > 구성으로 이동한다 기본 설정에서 이 빌드는 매개변수가 있습니다를 체크 해주고 매개 변수 추가에서 Git Parameter을 선택한다 git paramter을 선택하면 다음과 같은 폼 화면을 볼 수 있다 Name : 변수 명 Parameter Type : Branch (브랜치 이름을 사용할 것이기때문에) Default Value : ..

Jenkins npm 빌드 설정 [내부링크]

1. 플러그인 설치 Dashboard > Jenkins 관리 > Plugins 로 이동 Available plugins에서 Nodejs Plugin를 다운받아 준다 다운이 완료되면 위의 사진처럼 Installed plugins에서 해당 플러그인을 확인 할 수 있다 2. Node 세팅 Dashboard > Jenkins 관리 > Tools 로 이동 내리다보면 사진과 같이 NodeJS폼을 확인 할 수 있다 Name : 식별을 위한 임의의 이름. 마음대로 정해주자 Version : 사용하고 싶은 node 버전 선택 다음과 같이 빈값을 채워넣고 저장하면 완료 3. Jenkins Item 세팅 Dashboard > npm을 사용하고자 하는 Jenkins item > 구성 으로 이동한다 내리다보면 보이는 빌드 환..

Jenkins를 사용하여 EC2에 자동배포하기 [내부링크]

문제 상황 테스트를 위한 서버에 배포할 때 수동으로 진행을 하였다. 과정은 다음과 같다. 1. 깃허브에서 코드를 받아온다 2. 로컬 환경에서 빌드한다 3. 빌드 완료 후, 작업물을 .tar.gz 파일로 압축한다 4. 테스트 서버로 전송한다 5. 테스트 서버에서 압축을 푼다 6. 테스트 서버에서 필요한 install을 진행 7. 테스트 서버에서 프로젝트를 실행 QA를 진행하면서 수정사항이 생길때 마다 위의 작업을 반복하였다 백엔드 소스와 프론트 소스 2가지를 매번 수작업으로 진행하려니 너무너무 귀찮았다 사실 그린/블루 배포가 구축된게 있으나 테스트 서버 배포에 사용하기에는 너무 과한 느낌이고 무엇보다 너무 느려서 결국 수동 배포를 하게 된다 수동 배포가 결국 위의 작업을 반복하는 것이기에 귀찮음을 이기지..

Jenkins로 EC2에 배포하기 [내부링크]

1. AWS EC2 연동 플러그인 설치 대시보드 > jenkins 관리 > plugina 로 이동 Available plugins 에서 Publish Over SSH를 검색해서 다운로드 받는다 다운이 완료되면 위의 사진처럼 installed plugins에서 해당 플러그인을 확인할 수 있다 시스템 설정 대시보드 > jenkins 관리 > system으로 이동 쭉 내리다보면 Publish over SSH이라 적힌 부분을 채워넣어야 된다 Key : AWS EC2 인스턴스 생성 시 발급받은 .pem 파일의 내용 Name : 식별하기위한 임의의 이름. 원하는걸로 적당히 지어주면 된다 Hostname : 접속할 EC2 인스턴스의 public IPv4 주소 Username : 원격 서버에 접속할 유저 이름 ..

Doker에 Jenkins 설치 [내부링크]

1. 도커에 젠킨스 컨테이너 설치 젠킨스 컨테이너 Jenkins를 검색하여 Jenkins 컨테이너를 다운받는다 본인은 jenkins 컨테이너를 다운받아서 사용할 경우, 플러그인 install 부분에서 에러가 발생했다 해결이 되지 않아 jenkins/jenkins 컨테이너를 사용하니 바로 해결되었다 추가 세팅 Optional settings에서 Container name에는 원하는 이름을 지정해주고 포트는 다음과 같이 작성한 뒤 실행 2. 젠킨스 시작하기 이제 젠킨스를 사용해보기 위하여 127.0.0.1:8080으로 접속하면 다음과 같은 화면이 보일 것이다 로그인 갑자기 로그인을 하라고 하는데 우리는 비밀번호를 설정한 적이 없다! 젠킨스가 기본적으로 만들어주는 비밀번호를 찾아야 된다 사진처럼 ..

Jenkins 슬랙 연결 [내부링크]

1. Slack App에 Jenkins 추가 추가를 하고 나면 설정하는 방법을 설명해주는데 현재의 jenkins와는 맞지 않는 부분이 있다 설명부분을 천천히 내리다보면 3단계에 있는 팀 하위 도메인과 통합 토큰 자격 증명 ID는 Jenkins 에서 세팅할 때 필요하니 따로 기록을 해두자! 2. Jenkins 설정 slack 연결 Dashboard > Jenkins 관리 > System 으로 이동 시스템에서 아래로 쭉 내리다보면 Slack 란이 있다. 다음과 같이 값을 채워 넣자! Workspace : 팀 하위 도메인 Default channel / member id : 메세지가 발송 될 슬랙 채널 이름 Custom slack app bot user 는 체크를 꼭 해제! 체크하면 에러 발생 인증 값..

Jenkins SSH를 이용한 GitHub 연동 [내부링크]

1. 키 파일 생성 키 생성 방법 키 생성을 위해 콘솔에 다음과 같은 명령어 입력 ssh-keygen -t rsa -f "ssh_key_name" 이후 프롬프트에 보안 암호를 입력하라는 메세지가 나오는데 굳이 입력하지 않아도 된다. example 생성된 키 확인 방법 ls ~/.ssh 2. 깃허브 세팅 깃허브 ssh 키 등록 연동 하려는 깃허브 레파지토리 > settings > Deploy Keys로 이동 title에는 key를 식별할 수 있는 원하는 이름을 기입 key에 위에서 만든 키파일 중 ssh_key_name.pub의 값을 붙여 넣으면 된다 공개키 내용 확인 방법 ssh_key_name.pub의 내용은 콘솔에 다음과 같이 입력하여 확인할 수 있다 cd ~/.ssh cat ssh..

[프로그래머스] 배열 원소의 길이 [내부링크]

문제 설명 문자열 배열 strlist가 매개변수로 주어집니다. strlist 각 원소의 길이를 담은 배열을 retrun하도록 solution 함수를 완성해주세요. 제한사항 1 ≤ strlist 원소의 길이 ≤ 100 strlist는 알파벳 소문자, 대문자, 특수문자로 구성되어 있습니다. 입출력 예 설명 입출력 예 #1 ["We", "are", "the", "world!"]의 각 원소의 길이인 [2, 3, 3, 6]을 return합니다. 입출력 예 #2 ["I", "Love", "Programmers."]의 각 원소의 길이인 [1, 4, 12]을 return합니다. 내 풀이 def solution(strlist): answer = [] for str in strlist : answer.app..

[프로그래머스] 컨트롤 제트 [내부링크]

문제 설명 숫자와 "Z"가 공백으로 구분되어 담긴 문자열이 주어집니다. 문자열에 있는 숫자를 차례대로 더하려고 합니다. 이 때 "Z"가 나오면 바로 전에 더했던 숫자를 뺀다는 뜻입니다. 숫자와 "Z"로 이루어진 문자열 s가 주어질 때, 머쓱이가 구한 값을 return 하도록 solution 함수를 완성해보세요. 제한사항 1 ≤ s의 길이 ≤ 200 -1,000

[프로그래머스] 소인수분해 [내부링크]

문제 설명 소인수분해란 어떤 수를 소수들의 곱으로 표현하는 것입니다. 예를 들어 12를 소인수 분해하면 2 * 2 * 3 으로 나타낼 수 있습니다. 따라서 12의 소인수는 2와 3입니다. 자연수 n이 매개변수로 주어질 때 n의 소인수를 오름차순으로 담은 배열을 return하도록 solution 함수를 완성해주세요. 제한사항 2 ≤ n ≤ 10,000 입출력 예 설명 입출력 예 #1 12를 소인수분해하면 2 * 2 * 3 입니다. 따라서 [2, 3]을 return합니다. 입출력 예 #2 17은 소수입니다. 따라서 [17]을 return 해야 합니다. 입출력 예 #2 420을 소인수분해하면 2 * 2 * 3 * 5 * 7 입니다. 따라서 [2, 3, 5, 7]을 return합니다. 내 풀이 d..

[프로그래머스] 숨어있는 숫자의 덧셈 (1) [내부링크]

문제 설명 문자열 my_string이 매개변수로 주어집니다. my_string안의 모든 자연수들의 합을 return하도록 solution 함수를 완성해주세요. 제한사항 1 ≤ my_string의 길이 ≤ 1,000 my_string은 소문자, 대문자 그리고 한자리 자연수로만 구성되어있습니다. 입출력 예 설명 입출력 예 #1 "aAb1B2cC34oOp"안의 한자리 자연수는 1, 2, 3, 4 입니다. 따라서 1 + 2 + 3 + 4 = 10 을 return합니다. 입출력 예 #2 "1a2b3c4d123Z"안의 한자리 자연수는 1, 2, 3, 4, 1, 2, 3 입니다. 따라서 1 + 2 + 3 + 4 + 1 + 2 + 3 = 16 을 return합니다. 내 풀이 def solution(my_..

[프로그래머스] 문자열 정렬하기 (1) [내부링크]

문제 설명 문자열 my_string이 매개변수로 주어질 때, my_string안에 있는 숫자만 골라 오름차순 정렬한 리스트를 return 하도록 solution 함수를 작성해보세요. 제한사항 1 ≤ my_string의 길이 ≤ 100 my_string에는 숫자가 한 개 이상 포함되어 있습니다. my_string은 영어 소문자 또는 0부터 9까지의 숫자로 이루어져 있습니다. - - - 입출력 예 설명 입출력 예 #1 "hi12392"에 있는 숫자 1, 2, 3, 9, 2를 오름차순 정렬한 [1, 2, 2, 3, 9]를 return 합니다. 입출력 예 #2 "p2o4i8gj2"에 있는 숫자 2, 4, 8, 2를 오름차순 정렬한 [2, 2, 4, 8]을 return 합니다. 입출력 예 #3 "abc..

[프로그래머스] 모음 제거 [내부링크]

문제 설명 영어에선 a, e, i, o, u 다섯 가지 알파벳을 모음으로 분류합니다. 문자열 my_string이 매개변수로 주어질 때 모음을 제거한 문자열을 return하도록 solution 함수를 완성해주세요. 제한사항 my_string은 소문자와 공백으로 이루어져 있습니다. 1 ≤ my_string의 길이 ≤ 1,000 입출력 예 설명 입출력 예 #1 "bus"에서 모음 u를 제거한 "bs"를 return합니다. 입출력 예 #2 "nice to meet you"에서 모음 i, o, e, u를 모두 제거한 "nc t mt y"를 return합니다. 내 풀이 def solution(my_string): vowels = ['a', 'e', 'i', 'o', 'u'] for char in vo..

[프로그래머스] 팩토리얼 [내부링크]

문제 설명 i팩토리얼 (i!)은 1부터 i까지 정수의 곱을 의미합니다. 예를들어 5! = 5 * 4 * 3 * 2 * 1 = 120 입니다. 정수 n이 주어질 때 다음 조건을 만족하는 가장 큰 정수 i를 return 하도록 solution 함수를 완성해주세요. i! ≤ n 제한사항 0 n : return i-1 elif fac == n : return i 풀이 언어 : Python3 문제 풀이 풀이 1. 10!이 n의 최대값과 동일하기 때문에, 반복문을 1부터 10까지만 탐색 2. 탐색 중인 숫자를 차례대로 곱해 나가면서 팩토리얼 값을 계산 3. 만약 계산한 팩토리얼 값이 n보다 크다면, 현재 탐색 중인 값 -1을 반환 4. 만약 계산한 팩토리얼 값과 n이 동일하다면, 현재 탐색중인 값을 반환

[프로그래머스] 최댓값 만들기(1) [내부링크]

문제 설명 정수 배열 numbers가 매개변수로 주어집니다. numbers의 원소 중 두 개를 곱해 만들 수 있는 최댓값을 return하도록 solution 함수를 완성해주세요. 제한사항 0 ≤ numbers의 원소 ≤ 10,000 2 ≤ numbers의 길이 ≤ 100 입출력 예 설명 입출력 예 #1 [1, 2, 3, 4, 5]에서 두 수의 곱중 최댓값은 4 * 5 = 20 입니다. 입출력 예 #2 [0, 31, 24, 10, 1, 9]에서 두 수의 곱중 최댓값은 31 * 24 = 744 입니다. 내 풀이 def solution(numbers): numbers.sort(reverse=True) return numbers[0] * numbers[1] 풀이 언어 : Python3 문제 풀..

[프로그래머스] 합성수 찾기 [내부링크]

문제 설명 약수의 개수가 세 개 이상인 수를 합성수라고 합니다. 자연수 n이 매개변수로 주어질 때 n이하의 합성수의 개수를 return하도록 solution 함수를 완성해주세요. 제한사항 1 ≤ n ≤ 100 입출력 예 설명 입출력 예 #1 10 이하 합성수는 4, 6, 8, 9, 10 로 5개입니다. 따라서 5를 return합니다. 입출력 예 #2 15 이하 합성수는 4, 6, 8, 9, 10, 12, 14, 15 로 8개입니다. 따라서 8을 return합니다. 내 풀이 def solution(n): answer = 0 for num in range(3, n+1): for mod in range(2, num) : if num % mod == 0 : answer += 1 break retu..

[프로그래머스] 주사위의 개수 [내부링크]

문제 설명 머쓱이는 직육면체 모양의 상자를 하나 가지고 있는데 이 상자에 정육면체 모양의 주사위를 최대한 많이 채우고 싶습니다. 상자의 가로, 세로, 높이가 저장되어있는 배열 box와 주사위 모서리의 길이 정수 n이 매개변수로 주어졌을 때, 상자에 들어갈 수 있는 주사위의 최대 개수를 return 하도록 solution 함수를 완성해주세요. 제한사항 box의 길이는 3입니다. box[0] = 상자의 가로 길이 box[1] = 상자의 세로 길이 box[2] = 상자의 높이 길이 1 ≤ box의 원소 ≤ 100 1 ≤ n ≤ 50 n ≤ box의 원소 주사위는 상자와 평행하게 넣습니다. 입출력 예 설명 입출력 예 #1 상자의 크기가 가로 1, 세로 1, 높이 1이므로 모서리의 길이가 1인 주사위는..

[프로그래머스] 배열 회전시키기 [내부링크]

문제 설명 정수가 담긴 배열 numbers와 문자열 direction가 매개변수로 주어집니다. 배열 numbers의 원소를 direction방향으로 한 칸씩 회전시킨 배열을 return하도록 solution 함수를 완성해주세요. 제한사항 3 ≤ numbers의 길이 ≤ 20 direction은 "left" 와 "right" 둘 중 하나입니다. 입출력 예 설명 입출력 예 #1 numbers 가 [1, 2, 3]이고 direction이 "right" 이므로 오른쪽으로 한 칸씩 회전시킨 [3, 1, 2]를 return합니다. 입출력 예 #2 numbers 가 [4, 455, 6, 4, -1, 45, 6]이고 direction이 "left" 이므로 왼쪽으로 한 칸씩 회전시킨 [455, 6, 4, -1..

[프로그래머스] 공 던지기 [내부링크]

문제 설명 머쓱이는 친구들과 동그랗게 서서 공 던지기 게임을 하고 있습니다. 공은 1번부터 던지며 오른쪽으로 한 명을 건너뛰고 그다음 사람에게만 던질 수 있습니다. 친구들의 번호가 들어있는 정수 배열 numbers와 정수 k가 주어질 때, k번째로 공을 던지는 사람의 번호는 무엇인지 return 하도록 solution 함수를 완성해보세요. 제한사항 2

[프로그래머스] 2차원으로 만들기 [내부링크]

문제 설명 정수 배열 num_list와 정수 n이 매개변수로 주어집니다. num_list를 다음 설명과 같이 2차원 배열로 바꿔 return하도록 solution 함수를 완성해주세요. num_list가 [1, 2, 3, 4, 5, 6, 7, 8] 로 길이가 8이고 n이 2이므로 num_list를 2 * 4 배열로 다음과 같이 변경합니다. 2차원으로 바꿀 때에는 num_list의 원소들을 앞에서부터 n개씩 나눠 2차원 배열로 변경합니다. 제한사항 num_list의 길이는 n의 배 수개입니다. 0 ≤ num_list의 길이 ≤ 150 2 ≤ n

[프로그래머스] 점의 위치 구하기 [내부링크]

문제 설명 사분면은 한 평면을 x축과 y축을 기준으로 나눈 네 부분입니다. 사분면은 아래와 같이 1부터 4까지 번호를매깁니다. x 좌표와 y 좌표가 모두 양수이면 제1사분면에 속합니다. x 좌표가 음수, y 좌표가 양수이면 제2사분면에 속합니다. x 좌표와 y 좌표가 모두 음수이면 제3사분면에 속합니다. x 좌표가 양수, y 좌표가 음수이면 제4사분면에 속합니다. x 좌표 (x, y)를 차례대로 담은 정수 배열 dot이 매개변수로 주어집니다. 좌표 dot이 사분면 중 어디에 속하는지 1, 2, 3, 4 중 하나를 return 하도록 solution 함수를 완성해주세요. 제한사항 dot의 길이 = 2 dot[0]은 x좌표를, dot[1]은 y좌표를 나타냅니다 -500 ≤ dot의 원소 ≤ 500 d..

[프로그래머스] 구슬을 나누는 경우의 수 [내부링크]

문제 설명 머쓱이는 구슬을 친구들에게 나누어주려고 합니다. 구슬은 모두 다르게 생겼습니다. 머쓱이가 갖고 있는 구슬의 개수 balls와 친구들에게 나누어 줄 구슬 개수 share이 매개변수로 주어질 때, balls개의 구슬 중 share개의 구슬을 고르는 가능한 모든 경우의 수를 return 하는 solution 함수를 완성해주세요. 제한사항 1 ≤ balls ≤ 30 1 ≤ share ≤ 30 구슬을 고르는 순서는 고려하지 않습니다. share ≤ balls 입출력 예 설명 입출력 예 #1 서로 다른 구슬 3개 중 2개를 고르는 경우의 수는 3입니다. 입출력 예 #2 서로 다른 구슬 5개 중 3개를 고르는 경우의 수는 10입니다. 내 풀이 def solution(balls, share):..

[프로그래머스] 가위 바위 보 [내부링크]

문제 설명 가위는 2 바위는 0 보는 5로 표현합니다. 가위 바위 보를 내는 순서대로 나타낸 문자열 rsp가 매개변수로 주어질 때, rsp에 저장된 가위 바위 보를 모두 이기는 경우를 순서대로 나타낸 문자열을 return하도록 solution 함수를 완성해보세요. 제한사항 0

[프로그래머스] 모스부호 (1) [내부링크]

문제 설명 머쓱이는 친구에게 모스부호를 이용한 편지를 받았습니다. 그냥은 읽을 수 없어 이를 해독하는 프로그램을 만들려고 합니다. 문자열 letter가 매개변수로 주어질 때, letter를 영어 소문자로 바꾼 문자열을 return 하도록 solution 함수를 완성해보세요. 모스부호는 다음과 같습니다. morse = { '.-':'a','-...':'b','-.-.':'c','-..':'d','.':'e','..-.':'f', '--.':'g','....':'h','..':'i','.---':'j','-.-':'k','.-..':'l', '--':'m','-.':'n','---':'o','.--.':'p','--.-':'q','.-.':'r', '...':'s','-':'t','..-':'u','....

[프로그래머스] 개미 군단 [내부링크]

문제 설명 개미 군단이 사냥을 나가려고 합니다. 개미군단은 사냥감의 체력에 딱 맞는 병력을 데리고 나가려고 합니다. 장군개미는 5의 공격력을, 병정개미는 3의 공격력을 일개미는 1의 공격력을 가지고 있습니다. 예를 들어 체력 23의 여치를 사냥하려고 할 때, 일개미 23마리를 데리고 가도 되지만, 장군개미 네 마리와 병정개미 한 마리를 데리고 간다면 더 적은 병력으로 사냥할 수 있습니다. 사냥감의 체력 hp가 매개변수로 주어질 때, 사냥감의 체력에 딱 맞게 최소한의 병력을 구성하려면 몇 마리의 개미가 필요한지를 return하도록 solution 함수를 완성해주세요. 제한사항 hp는 자연수입니다. 0 ≤ hp ≤ 1000 입출력 예 설명 입출력 예 #1 hp가 23이므로, 장군개미 네마리와 병정..

[프로그래머스] 순서쌍의 개수 [내부링크]

문제 설명 순서쌍이란 두 개의 숫자를 순서를 정하여 짝지어 나타낸 쌍으로 (a, b)로 표기합니다. 자연수 n이 매개변수로 주어질 때 두 숫자의 곱이 n인 자연수 순서쌍의 개수를 return하도록 solution 함수를 완성해주세요. 제한사항 1 ≤ n ≤ 1,000,000 입출력 예 설명 입출력 예 #1 n이 20 이므로 곱이 20인 순서쌍은 (1, 20), (2, 10), (4, 5), (5, 4), (10, 2), (20, 1) 이므로 6을 return합니다. 입출력 예 #2 n이 100 이므로 곱이 100인 순서쌍은 (1, 100), (2, 50), (4, 25), (5, 20), (10, 10), (20, 5), (25, 4), (50, 2), (100, 1) 이므로 9를 return..

[프로그래머스] 진료순서 정하기 [내부링크]

문제 설명 외과의사 머쓱이는 응급실에 온 환자의 응급도를 기준으로 진료 순서를 정하려고 합니다. 정수 배열 emergency가 매개변수로 주어질 때 응급도가 높은 순서대로 진료 순서를 정한 배열을 return하도록 solution 함수를 완성해주세요. 제한사항 중복된 원소는 없습니다. 1 ≤ emergency의 길이 ≤ 10 1 ≤ emergency의 원소 ≤ 100 입출력 예 설명 입출력 예 #1 emergency가 [3, 76, 24]이므로 응급도의 크기 순서대로 번호를 매긴 [3, 1, 2]를 return합니다. 입출력 예 #2 emergency가 [1, 2, 3, 4, 5, 6, 7]이므로 응급도의 크기 순서대로 번호를 매긴 [7, 6, 5, 4, 3, 2, 1]를 return합니다. ..

[프로그래머스] 외계행성의 나이 [내부링크]

문제 설명 우주여행을 하던 머쓱이는 엔진 고장으로 PROGRAMMERS-962 행성에 불시착하게 됐습니다. 입국심사에서 나이를 말해야 하는데, PROGRAMMERS-962 행성에서는 나이를 알파벳으로 말하고 있습니다. a는 0, b는 1, c는 2, ..., j는 9입니다. 예를 들어 23살은 cd, 51살은 fb로 표현합니다. 나이 age가 매개변수로 주어질 때 PROGRAMMER-962식 나이를 return하도록 solution 함수를 완성해주세요. 제한사항 age는 자연수입니다. age ≤ 1,000 PROGRAMMERS-962 행성은 알파벳 소문자만 사용합니다. 입출력 예 설명 입출력 예 #1 age가 23이므로 "cd"를 return합니다. 입출력 예 #2 age가 51이므로 "fb"..

[프로그래머스] 배열 자르기 [내부링크]

문제 설명 정수 배열 numbers와 정수 num1, num2가 매개변수로 주어질 때, numbers의 num1번 째 인덱스부터 num2번째 인덱스까지 자른 정수 배열을 return 하도록 solution 함수를 완성해보세요. 제한사항 2 ≤ numbers의 길이 ≤ 30 0 ≤ numbers의 원소 ≤ 1,000 0 ≤num1

[프로그래머스] 짝수의 합 [내부링크]

문제 설명 정수 n이 주어질 때, n이하의 짝수를 모두 더한 값을 return 하도록 solution 함수를 작성해주세요. 제한사항 0

[프로그래머스] 양꼬치 [내부링크]

문제 설명 머쓱이네 양꼬치 가게는 10인분을 먹으면 음료수 하나를 서비스로 줍니다. 양꼬치는 1인분에 12,000원, 음료수는 2,000원입니다. 정수 n과 k가 매개변수로 주어졌을 때, 양꼬치 n인분과 음료수 k개를 먹었다면 총얼마를 지불해야 하는지 return 하도록 solution 함수를 완성해보세요. 제한사항 0

[프로그래머스] 각도기 [내부링크]

문제 설명 각에서 0도 초과 90도 미만은 예각, 90도는 직각, 90도 초과 180도 미만은 둔각 180도는 평각으로 분류합니다. 각 angle이 매개변수로 주어질 때 예각일 때 1, 직각일 때 2, 둔각일 때 3, 평각일 때 4를 return하도록 solution 함수를 완성해주세요. 예각 : 0

[프로그래머스] 특정 문자 제거하기 [내부링크]

문제 설명 문자열 my_string과 문자 letter이 매개변수로 주어집니다. my_string에서 letter를 제거한 문자열을 return하도록 solution 함수를 완성해주세요. 제한사항 1 ≤ my_string의 길이 ≤ 100 letter은 길이가 1인 영문자입니다. my_string과 letter은 알파벳 대소문자로 이루어져 있습니다. 대문자와 소문자를 구분합니다. 입출력 예 설명 입출력 예 #1 "abcdef" 에서 "f"를 제거한 "abcde"를 return합니다. 입출력 예 #2 "BCBdbe" 에서 "B"를 모두 제거한 "Cdbe"를 return합니다. 내 풀이 def solution(my_string, letter): return my_string.replace(le..

[프로그래머스] 문자 반복 출력하기 [내부링크]

문제 설명 문자열 my_string과 정수 n이 매개변수로 주어질 때, my_string에 들어있는 각 문자를 n만큼 반복한 문자열을 return 하도록 solution 함수를 완성해보세요. 제한사항 2 ≤ my_string 길이 ≤ 5 2 ≤ n ≤ 10 "my_string"은 영어 대소문자로 이루어져 있습니다. 입출력 예 설명 입출력 예 #1 "hello"의 각 문자를 세 번씩 반복한 "hhheeellllllooo"를 return 합니다. 내 풀이 def solution(my_string, n): answer = "" for char in my_string : answer = answer + char * n return answer 풀이 언어 : Python3 문제 풀이 문자열 연산..

[프로그래머스] 짝수 홀수 개수 [내부링크]

문제 설명 정수가 담긴 리스트 num_list가 주어질 때, num_list의 원소 중 짝수와 홀수의 개수를 담은 배열을 return 하도록 solution 함수를 완성해보세요. 제한사항 1 ≤ num_list의 길이 ≤ 100 0 ≤ num_list의 원소 ≤ 1,000 입출력 예 설명 입출력 예 #1 [1, 2, 3, 4, 5]에는 짝수가 2, 4로 두 개, 홀수가 1, 3, 5로 세 개 있습니다. 입출력 예 #2 [1, 3, 5, 7]에는 짝수가 없고 홀수가 네 개 있습니다. 내 풀이 def solution(num_list): odd_number = 0 even_number = 0 for num in num_list : if (num % 2 == 0) : even_number += 1..

[프로그래머스] 직각삼각형 출력하기 [내부링크]

문제 설명 "*"의 높이와 너비를 1이라고 했을 때, "*"을 이용해 직각 이등변 삼각형을 그리려고합니다. 정수 n이 주어지면 높이와 너비가 n인 직각 이등변 삼각형을 출력하도록 코드를 작성해보세요. 제한사항 1 ≤ n ≤ 10 입출력 예 설명 입출력 예 #1 n이 3이므로 첫째 줄에 * 1개, 둘째 줄에 * 2개, 셋째 줄에 * 3개를 출력합니다. 내 풀이 n = int(input()) for i in range(1, n+1): print('*' * i) 풀이 언어 : Python3 문제 풀이 풀이 이번 문제는 다른 문제들과는 다르게 입력을 직접 받아야 된다 파이썬 input() 함수를 이용해서 값을 입력 받는

[프로그래머스] 배열 뒤집기 [내부링크]

문제 설명 정수가 들어 있는 배열 num_list가 매개변수로 주어집니다. num_list의 원소의 순서를 거꾸로 뒤집은 배열을 return하도록 solution 함수를 완성해주세요. 제한사항 1 ≤ num_list의 길이 ≤ 1,000 0 ≤ num_list의 원소 ≤ 1,000 입출력 예 설명 입출력 예 #1 num_list가 [1, 2, 3, 4, 5]이므로 순서를 거꾸로 뒤집은 배열 [5, 4, 3, 2, 1]을 return합니다. 입출력 예 #2 num_list가 [1, 1, 1, 1, 1, 2]이므로 순서를 거꾸로 뒤집은 배열 [2, 1, 1, 1, 1, 1]을 return합니다. 입출력 예 #3 num_list가 [1, 0, 1, 1, 1, 3, 5]이므로 순서를 거꾸로 뒤집은 배..

[프로그래머스] 나이 출력 [내부링크]

문제 설명 머쓱이는 40살인 선생님이 몇 년도에 태어났는지 궁금해졌습니다. 나이 age가 주어질 때, 2022년을 기준 출생 연도를 return 하는 solution 함수를 완성해주세요. 제한사항 0 < age ≤ 120 나이는 태어난 연도에 1살이며 1년마다 1씩 증가합니다. 입출력 예 설명 입출력 예 #1 2022년 기준 40살이므로 1983년생입니다. 입출력 예 #2 2022년 기준 23살이므로 2000년생입니다. 내 풀이 def solution(age): return 2022 - age + 1 풀이 언어 : Python3

[프로그래머스] 아이스 아메리카노 [내부링크]

문제 설명 머쓱이는 추운 날에도 아이스 아메리카노만 마십니다. 아이스 아메리카노는 한잔에 5,500원입니다. 머쓱이가 가지고 있는 돈 money가 매개변수로 주어질 때, 머쓱이가 최대로 마실 수 있는 아메리카노의 잔 수와 남는 돈을 순서대로 담은 배열을 return 하도록 solution 함수를 완성해보세요. 제한사항 0

[프로그래머스] 옷가게 할인 받기 [내부링크]

문제 설명 머쓱이네 옷가게는 10만 원 이상 사면 5%, 30만 원 이상 사면 10%, 50만 원 이상 사면 20%를 할인해줍니다. 구매한 옷의 가격 price가 주어질 때, 지불해야 할 금액을 return 하도록 solution 함수를 완성해보세요. 제한사항 10 ≤ price ≤ 1,000,000 price는 10원 단위로(1의 자리가 0) 주어집니다. 소수점 이하를 버린 정수를 return합니다. 입출력 예 설명 입출력 예 #1 150,000원에서 5%를 할인한 142,500원을 return 합니다. 입출력 예 #2 580,000원에서 20%를 할인한 464,000원을 return 합니다. 내 풀이 import math def sale(price): if (price >= 500000..

[프로그래머스] 배열의 평균값 [내부링크]

문제 설명 정수 배열 numbers가 매개변수로 주어집니다. numbers의 원소의 평균값을 return하도록 solution 함수를 완성해주세요. 제한사항 0 ≤ numbers의 원소 ≤ 1,000 1 ≤ numbers의 길이 ≤ 100 정답의 소수 부분이 .0 또는 .5인 경우만 입력으로 주어집니다. 입출력 예 설명 입출력 예 #1 [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] 의 원소들의 평균 값은 5.5입니다. 입출력 예 #2 [89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99]의 원소들의 평균 값은 94.0입니다. 내 풀이 def solution(numbers): sum = 0 for number in numbers: sum += number ..

[프로그래머스] 피자 나눠 먹기 (3) [내부링크]

문제 설명 머쓱이네 피자가게는 피자를 두 조각에서 열 조각까지 원하는 조각 수로 잘라줍니다. 피자 조각 수 slice와 피자를 먹는 사람의 수 n이 매개변수로 주어질 때, n명의 사람이 최소 한 조각 이상 피자를 먹으려면 최소 몇 판의 피자를 시켜야 하는지를 return 하도록 solution 함수를 완성해보세요. 제한사항 2 ≤ slice ≤ 10 1 ≤ n ≤ 100 입출력 예 설명 입출력 예 #1 10명이 7조각으로 자른 피자를 한 조각 이상씩 먹으려면 최소 2판을 시켜야 합니다 입출력 예 #2 12명이 4조각으로 자른 피자를 한 조각 이상씩 먹으려면 최소 3판을 시켜야 합니다. 내 풀이 def solution(slice, n): return n // slice if n % slice..

[프로그래머스] 피자 나눠 먹기 (2) [내부링크]

문제 설명 머쓱이네 피자가게는 피자를 여섯 조각으로 잘라 줍니다. 피자를 나눠먹을 사람의 수 n이 매개변수로 주어질 때, n명이 주문한 피자를 남기지 않고 모두 같은 수의 피자 조각을 먹어야 한다면 최소 몇 판을 시켜야 하는지를 return 하도록 solution 함수를 완성해보세요. 제한사항 1 ≤ n ≤ 100 입출력 예 설명 입출력 예 #1 6명이 모두 같은 양을 먹기 위해 한 판을 시켜야 피자가 6조각으로 모두 한 조각씩 먹을 수 있습니다. 입출력 예 #2 10명이 모두 같은 양을 먹기 위해 최소 5판을 시켜야 피자가 30조각으로 모두 세 조각씩 먹을 수 있습니다. 입출력 예 #3 4명이 모두 같은 양을 먹기 위해 최소 2판을 시키면 피자가 12조각으로 모두 세 조각씩 먹을 수 있습니다..

[프로그래머스] 피자 나눠 먹기 (1) [내부링크]

문제 설명 머쓱이네 피자가게는 피자를 일곱 조각으로 잘라 줍니다. 피자를 나눠먹을 사람의 수 n이 주어질 때, 모든 사람이 피자를 한 조각 이상 먹기 위해 필요한 피자의 수를 return 하는 solution 함수를 완성해보세요. 제한사항 1 ≤ n ≤ 100 입출력 예 설명 입출력 예 #1 7명이 최소 한 조각씩 먹기 위해서 최소 1판이 필요합니다. 입출력 예 #2 1명은 최소 한 조각을 먹기 위해 1판이 필요합니다. 입출력 예 #3 15명이 최소 한 조각씩 먹기 위해서 최소 3판이 필요합니다. 내 풀이 def solution(n): return n // 7 if n % 7 == 0 else n // 7 + 1 풀이 언어 : Python3 문제 풀이 3항 연산자 참인경우의 값 if 조..

[프로그래머스] 짝수는 싫어요 [내부링크]

문제 설명 정수 n이 매개변수로 주어질 때, n이하의 홀수가 오름차순으로 담긴 배열을 return하도록 solution 함수를 완성해주세요. 제한사항 1 ≤ n ≤ 100 입출력 예 설명 입출력 예 #1 10 이하의 홀수가 담긴 배열 [1, 3, 5, 7, 9]를 return합니다. 입출력 예 #2 15 이하의 홀수가 담긴 배열 [1, 3, 5, 7, 9, 11, 13, 15]를 return합니다. 내 풀이 def solution(n): answer = [] for number in range(1, n+1, 2): answer.append(number) return answer 풀이 언어 : Python3 문제 풀이 range() 함수 range (start, stop, step) st..

[프로그래머스] 최빈값 구하기 [내부링크]

문제 설명 최빈값은 주어진 값 중에서 가장 자주 나오는 값을 의미합니다. 정수 배열 array가 매개변수로 주어질 때, 최빈값을 return 하도록 solution 함수를 완성해보세요. 최빈값이 여러 개면 -1을 return 합니다. 제한사항 0 max_count) : max_count = count max_number = number elif (count == max_count) : max_number = -1 last_number = number return max_number 풀이 언어 : Python3 문제 풀이 변수 설명 last_number : 마지막으로 탐색한 숫자 count : 탐색 중인 숫자가 몇개 있는지 카운트하는 변수 max_number : 최빈값 숫자 max_count..

[프로그래머스] 중앙값 구하기 [내부링크]

문제 설명 중앙값은 어떤 주어진 값들을 크기의 순서대로 정렬했을 때 가장 중앙에 위치하는 값을 의미합니다. 예를 들어 1, 2, 7, 10, 11의 중앙값은 7입니다. 정수 배열 array가 매개변수로 주어질 때, 중앙값을 return 하도록 solution 함수를 완성해보세요. 제한사항 array의 길이는 홀수입니다. 0 5 print(len(array) // 2) >> 2 print(array[len(array) // 2]) >> 3

[프로그래머스] 나머지 구하기 [내부링크]

문제 설명 정수 num1, num2가 매개변수로 주어질 때, num1를 num2로 나눈 나머지를 return 하도록 solution 함수를 완성해주세요. 제한사항 0

[프로그래머스] 배열 두 배 만들기 [내부링크]

문제 설명 정수 배열 numbers가 매개변수로 주어집니다. numbers의 각 원소에 두배한 원소를 가진 배열을 return하도록 solution 함수를 완성해주세요. 제한사항 -10,000 ≤ numbers의 원소 ≤ 10,000 1 ≤ numbers의 길이 ≤ 1,000 입출력 예 설명 입출력 예 #1 [1, 2, 3, 4, 5]의 각 원소에 두배를 한 배열 [2, 4, 6, 8, 10]을 return합니다. 입출력 예 #2 [1, 2, 100, -99, 1, 2, 3]의 각 원소에 두배를 한 배열 [2, 4, 200, -198, 2, 4, 6]을 return합니다. 내 풀이 def solution(numbers): answer = [] for number in numbers: ans..

[프로그래머스] 숫자 비교하기 [내부링크]

문제 설명 정수 num1과 num2가 매개변수로 주어집니다. 두 수가 같으면 1 다르면 -1을 retrun하도록 solution 함수를 완성해주세요. 제한사항 0 ≤ num1 ≤ 10,000 0 ≤ num2 ≤ 10,000 입출력 예 설명 입출력 예 #1 num1이 2이고 num2가 3이므로 다릅니다. 따라서 -1을 return합니다. 입출력 예 #2 num1이 11이고 num2가 11이므로 같습니다. 따라서 1을 return합니다. 입출력 예 #3 num1이 7이고 num2가 99이므로 다릅니다. 따라서 -1을 return합니다. 내 풀이 def solution(num1, num2): return 1 if num1==num2 else -1 풀이 언어 : Python3 문제 풀이 파이썬..

[프로그래머스] 두 수의 나눗셈 [내부링크]

문제 설명 정수 num1과 num2가 매개변수로 주어질 때, num1을 num2로 나눈 값에 1,000을 곱한 후 정수 부분을 return 하도록 soltuion 함수를 완성해주세요. 제한사항 0

[프로그래머스] 몫 구하기 [내부링크]

문제 설명 정수 num1, num2가 매개변수로 주어질 때, num1을 num2로 나눈 몫을 return 하도록 solution 함수를 완성해주세요. 제한사항 0

[프로그래머스] 두 수의 곱 [내부링크]

문제 설명 정수 num1, num2가 매개변수 주어집니다. num1과 num2를 곱한 값을 return 하도록 solution 함수를 완성해주세요. 제한사항 0 ≤ num1 ≤ 100 0 ≤ num2 ≤ 100 입출력 예 설명 입출력 예 #1 num1이 3, num2가 4이므로 3 * 4 = 12를 return합니다. 입출력 예 #2 num1이 27, num2가 19이므로 27 * 19 = 513을 return합니다. 내 풀이 def solution(num1, num2): return num1*num2 풀이 언어 : Python3

[프로그래머스] 두 수의 차 [내부링크]

문제 설명 정수 num1과 num2가 주어질 때, num1에서 num2를 뺀 값을 return하도록 soltuion 함수를 완성해주세요. 제한사항 -50,000 ≤ num1 ≤ 50,000 -50,000 ≤ num2 ≤ 50,000 입출력 예 설명 입출력 예 #1 num1이 2이고 num2가 3이므로 2 + 3 = 5를 return합니다. 입출력 예 #2 num1이 100이고 num2가 2이므로 100 + 2 = 102를 return합니다. 내 풀이 def solution(num1, num2): return num1 + num2 풀이 언어 : Python3

[프로그래머스] 두 수의 합 [내부링크]

문제 설명 정수 num1과 num2가 주어질 때, num1과 num2의 합을 return하도록 soltuion 함수를 완성해주세요. 제한사항 -50,000 ≤ num1 ≤ 50,000 -50,000 ≤ num2 ≤ 50,000 입출력 예 설명 입출력 예 #1 num1이 2이고 num2가 3이므로 2 + 3 = 5를 return합니다. 입출력 예 #2 num1이 100이고 num2가 2이므로 100 + 2 = 102를 return합니다. 내 풀이 def solution(num1, num2): return num1 + num2 풀이 언어 : Python3

[프로그래머스] 분수의 덧셈 [내부링크]

문제 풀이 import math def solution(denum1, num1, denum2, num2): lcm = num1 * num2 // math.gcd(num1, num2) denum1 = denum1 * lcm // num1 denum2 = denum2 * lcm // num2 gcd = math.gcd(denum1 + denum2, lcm) return [(denum1 + denum2) // gcd, lcm // gcd] 분모들의 최소공배수(lcm)를 구한다 분모를 lcm으로 두기위해 분자들도 그에 맞춰 값을 처리해준다 lcm과 기존 분모를 나눈 값을 구한다 해당 값을 분자에 곱해준다 더해진 분자 값과 분모값의 최대공약수(gcd)를 구한다 약분을 위해 분모 값과 분자값에 최대 공약수(..

[express] passport.js [내부링크]

01. passport install npm install passport passport-local - passport와 passport-local 을 npm으로 설치 02. passport 세팅 //passport.js 세팅 const passport = require('passport') , LocalStrategy = require('passport-local').Strategy; app.use(passport.initialize()); app.use(passport.session()); //로그인 시, user 정보를 세션에 저장하기 위해 호출 passport.serializeUser(function(user, done) { done(null, user.id); }); //매 요청시 호출, 세션..

[React] react-router-dom [내부링크]

react-router-dom 설치하기 npm install react-router-dom react router 사용하기 react-router-dom import //app.js import {BrowserRouter as Router, Route, Switch} from 'react-router-dom'; react-router-dom의 'browserRouer, Route, Switch'를 임폴트, 이때 browserRouer는 Router라는 이름으로 사용 페이지 생성하기 src/routes 폴더 생성 2. 폴더 안에 compo.js 파일 생성 import React from 'react'; class Compo extends React.Component{ render(){ ret..

[React] ant Design 사용하기 [내부링크]

ant Design 중국에서 개발한 React UI 라이브러리 프레임워크 사이트 : https://ant.design/ 사용방법 설치하기 npm install antd ant design 사용해보기 공식 사이트 가이드(https://ant.design/docs/react/getting-started)에 나와있는 것처럼 'datePicker'을 사용 react 프로젝트 생성은 이전 글(https://rosyhuedoyou.tistory.com/91) 참조 //app.js import React, { useState } from 'react'; import { DatePicker, message } from 'antd'; import 'antd/dist/antd.css'; functio..

[React] 프로젝트 생성하기 [내부링크]

node js 설치 설치 사이트 : https://nodejs.org/ko/ 설치 확인 방법 node -v npx 설치 npm install npx -g React 프로젝트 생성 npx create-react-app projectName 프로젝트 폴더로 이동 cd projectName 프로젝트 실행 npm start 서버 종료 CTRL + C 서버가 실행중인 콘솔에서 CTRL + C를 누르면 실행중인 react 서버가 종료

[vsCode] 재미있는 extensions _ Power Mode [내부링크]

power mode : visual studio의 extensions 으로, 타이핑을 했을 때 여러 애니메이션 효과를 부여 설치 방법 visual studio - 좌측 아이콘들 중 extensions (ctrl+shift+X) - 'power mode' 검색 - install power mode 세팅 방법 톱니바퀴 모양을 클릭하면 해당 extensions의 settings 페이지가 열리게 되는데, 해당 페이지에서는 'power mode'와 관련된 설정들 변경 가능 power mode 실행하기 'powermode : Enabled' 옵션을 체크 해주어야 power mode 사용 가능 타이핑 시 흔들리는 효과 제거 power mode를 사용하면 위와 같이 타이핑을 할 때 화면이 흔들리는 효과가..

[github] Push 했는데 잔디가 안 심어질 때 [내부링크]

문제 상황 git commit, push를 했는데 깃허브 잔디가 심어지지 않는다 해결 방법 git config --global user.name '깃허브유저네임' git config --global user.email '깃허브이메일' git config의 정보가 깃허브의 정보와 일치하지 않아서 잔디가 심어지지 않았던 것이었다 위와 같은 명령어를 통해 깃허브의 정보와 동일하게 설정해주고 commit push를 하면 잔디가 매우 잘 심어진다!

[프로그래머스] DATETIME에서 DATE로 형 변환 [내부링크]

programmers.co.kr/learn/courses/30/parts/17047 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 프로그래머스 SQL 고득점 Kit String, Date [Level2] DATETIME에서 DATE로 형변환 풀이 SELECT ANIMAL_ID, NAME, DATE_FORMAT(DATETIME, '%Y-%m-%d') FROM ANIMAL_INS ORDER BY ANIMAL_ID DATETIME 필드를 '연도-월-일'의 형식으로 출력해야되는 문제였다 출력 포맷을 변경해주기 위해서 DATE_FORMAT이라는 것을 ..

[프로그래머스] 오랜 기간 보호한 동물(2) [내부링크]

programmers.co.kr/learn/courses/30/parts/17047 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 프로그래머스 SQL 고득점 Kit String, Date [Level3] 오랜 기간 보호한 동물(2) 풀이 SELECT O.ANIMAL_ID, O.NAME FROM ANIMAL_OUTS AS O INNER JOIN ANIMAL_INS AS I ON O.ANIMAL_ID = I.ANIMAL_ID ORDER BY O.DATETIME - I.DATETIME DESC LIMIT 2 입양을 간 동물 중 보호 기간이 제일 길..

[프로그래머스] 중성화 여부 파악하기 [내부링크]

programmers.co.kr/learn/courses/30/parts/17047 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 프로그래머스 SQL 고득점 Kit String, Date [Level2] 중성화 여부 파악하기 풀이 SELECT ANIMAL_ID, NAME, IF(SEX_UPON_INTAKE LIKE 'Neutered%' OR SEX_UPON_INTAKE LIKE 'Spayed%','O','X') AS '중성화' FROM ANIMAL_INS ORDER BY ANIMAL_ID 중성화가 되어있으면 O, 되어있지 않으면 X로 표현을 ..

[프로그래머스] 이름에 el이 들어가는 동물 찾기 [내부링크]

programmers.co.kr/learn/courses/30/parts/17047 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 프로그래머스 SQL 고득점 Kit String, Date [Level2] 이름에 el이 들어가는 동물 찾기 풀이 SELECT ANIMAL_ID, NAME FROM ANIMAL_INS WHERE ANIMAL_TYPE='Dog' AND NAME LIKE '%EL%' ORDER BY NAME 개 중에서 이름에 EL이 들어가는 데이터를 찾으면 되는 문제였다 개이면서 이름에 el이 들어가야되기 때문에 두가지 조건을 and로..

[프로그래머스] 루시와 엘라 찾기 [내부링크]

programmers.co.kr/learn/courses/30/parts/17047 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 프로그래머스 SQL 고득점 Kit String, Date [Level2] 루시와 엘라 찾기 풀이 SELECT ANIMAL_ID, NAME, SEX_UPON_INTAKE FROM ANIMAL_INS WHERE name IN('Lucy','Ella','Pickle','Rogan','Sabrina','Mitty') Lucy, Ella, Pickle, Rogan, Sabrina, Mitty 라는 이름 중에 일치하는 이름이..

백준 7662 _ 이중 우선순위 큐 [내부링크]

www.acmicpc.net/problem/7662 7662번: 이중 우선순위 큐 입력 데이터는 표준입력을 사용한다. 입력은 T개의 테스트 데이터로 구성된다. 입력의 첫 번째 줄에는 입력 데이터의 수를 나타내는 정수 T가 주어진다. 각 테스트 데이터의 첫째 줄에는 Q에 적 www.acmicpc.net 내 소스 코드 #include #include using namespace std; int main(void) { ios::sync_with_stdio(false); cin.tie(NULL); int T, k, n; char c; cin >> T; while (T--) { multiset pq; cin >> k; while (k--) { cin >> c >> n; if (c == 'I') { pq.ins..

[프로그래머스] 보호소에서 중성화한 동물 [내부링크]

programmers.co.kr/learn/courses/30/parts/17046 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 프로그래머스 SQL 고득점 Kit JOIN [Level3] 보호소에서 중성화한 동물 풀이 SELECT O.ANIMAL_ID, O.ANIMAL_TYPE, O.NAME FROM ANIMAL_OUTS AS O JOIN ANIMAL_INS AS I ON I.ANIMAL_ID = O.ANIMAL_ID WHERE (O.SEX_UPON_OUTCOME LIKE 'Neutered%' OR O.SEX_UPON_OUTCOME LIKE..

[프로그래머스] 오랜 기간 보호한 동물(1) [내부링크]

programmers.co.kr/learn/courses/30/parts/17046 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 프로그래머스 SQL 고득점 Kit JOIN [Level3] 오랜 기간 보호한 동물(1) 풀이 SELECT I.NAME, I.DATETIME FROM ANIMAL_INS AS I LEFT JOIN ANIMAL_OUTS AS O ON I.ANIMAL_ID=O.ANIMAL_ID WHERE O.ANIMAL_ID IS NULL ORDER BY I.DATETIME LIMIT 3 입양을 가지 못한 동물을 구해야 되는 문제이기 ..

[프로그래머스] 있었는데요 없었습니다 [내부링크]

programmers.co.kr/learn/courses/30/parts/17046 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 프로그래머스 SQL 고득점 Kit JOIN [Level3] 있었는데요 없었습니다 풀이 SELECT O.ANIMAL_ID, O.NAME FROM ANIMAL_INS AS I, ANIMAL_OUTS AS O WHERE I.ANIMAL_ID = O.ANIMAL_ID AND I.DATETIME>O.DATETIME ORDER BY I.DATETIME; 편의를 위해 'ANIMAL_OUTS AS O'라고 하여 ANIMAL_OU..

[프로그래머스] 없어진 기록 찾기 [내부링크]

programmers.co.kr/learn/courses/30/parts/17046 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 프로그래머스 SQL 고득점 Kit JOIN [Level3] 없어진 기록 찾기 풀이 SELECT O.ANIMAL_ID, O.NAME FROM ANIMAL_OUTS AS O LEFT JOIN ANIMAL_INS ON O.ANIMAL_ID = ANIMAL_INS.ANIMAL_ID WHERE ANIMAL_INS.DATETIME IS NULL ORDER BY O.ANIMAL_ID 편의를 위해 'ANIMAL_OUTS AS O..

[프로그래머스] NULL 처리하기 [내부링크]

programmers.co.kr/learn/courses/30/parts/17045 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 프로그래머스 SQL 고득점 Kit IS NULL [Level2] NULL 처리하기 풀이 SELECT ANIMAL_TYPE, IF(NAME IS NULL, "No name", NAME) AS NAME, SEX_UPON_INTAKE FROM ANIMAL_INS SELECT 절에 IF를 넣어서 NAME이 NULL일 경우 값이 'NO NAME'으로 나오도록 SQL을 작성하였다 IF의 경우 IF(조건, 참일때, 거짓일때) ..

[프로그래머스] 이름이 있는 동물의 아이디 [내부링크]

programmers.co.kr/learn/courses/30/parts/17045 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 프로그래머스 SQL 고득점 Kit IS NULL [Level1] 이름이 있는 동물의 아이디 풀이 SELECT ANIMAL_ID FROM ANIMAL_INS WHERE NAME IS NOT NULL; WHERE 절에 이름이 NULL이 아닌지에 대한 조건을 걸어서 해결한 문제이다 단, NULL의 경우 다른 조건들 처럼 NAME='NULL' 또는 NAME!='NULL' 같은 형식으로 사용하면 안되고 NAME IS NUL..

[프로그래머스] 이름이 없는 동물의 아이디 [내부링크]

programmers.co.kr/learn/courses/30/parts/17045 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 프로그래머스 SQL 고득점 Kit IS NULL [Level1] 이름이 없는 동물의 아이디 풀이 SELECT ANIMAL_ID FROM ANIMAL_INS WHERE NAME IS NULL ORDER BY ANIMAL_ID WHERE 절에 이름이 NULL인지에 대한 조건을 걸어서 해결한 문제이다 단, NULL의 경우 다른 조건들 처럼 NAME='NULL' 또는 NAME!='NULL' 같은 형식으로 사용하면 안되고 ..

[프로그래머스] 입양 시각 구하기(2) [내부링크]

programmers.co.kr/learn/courses/30/parts/17044 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 프로그래머스 SQL 고득점 Kit Group By [Level2] 입양 시각 구하기(2) 풀이 SET @hour := -1; -- 변수 선언 SELECT (@hour := @hour + 1) as HOUR, (SELECT COUNT(*) FROM ANIMAL_OUTS WHERE HOUR(DATETIME) = @hour) as COUNT FROM ANIMAL_OUTS WHERE @hour < 23 SET 을 이용하여..

[프로그래머스] 입양 시각 구하기(1) [내부링크]

programmers.co.kr/learn/courses/30/parts/17044 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 프로그래머스 SQL 고득점 Kit Group By [Level2] 입양 시각 구하기(1) 풀이 SELECT TRIM(LEADING '0' FROM DATE_FORMAT(DATETIME,"%H")) AS HOUR , COUNT(*) FROM ANIMAL_OUTS WHERE DATE_FORMAT(DATETIME, "%H") >= '09' AND DATE_FORMAT(DATETIME, "%H") < '20' GROUP ..

[프로그래머스] 동명 동물 수 찾기 [내부링크]

programmers.co.kr/learn/courses/30/parts/17044 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 프로그래머스 SQL 고득점 Kit Group By [Level2] 동명 동물 수 찾기 풀이 SELECT NAME, COUNT(NAME) AS COUNT FROM ANIMAL_INS GROUP BY NAME HAVING COUNT>1 ORDER BY NAME; GROUP BY를 이용하여 'NAME'에 따라 그룹을 나누고 HAVING 절을 이용하여 COUNT가 1보다 커야 된다는 조건을 넣어주었다 HAVING절은 GR..

[프로그래머스] 고양이와 개는 몇 마리 있을까 [내부링크]

programmers.co.kr/learn/courses/30/parts/17044 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 프로그래머스 SQL 고득점 Kit Group By [Level2] 개와 고양이는 몇 마리 있을까 풀이 SELECT ANIMAL_TYPE,COUNT(ANIMAL_TYPE) AS COUNT FROM ANIMAL_INS GROUP BY ANIMAL_TYPE ORDER BY ANIMAL_TYPE; GROUP BY를 이용하여 'ANIMAL_TYPE'의 필드값에 따라 그룹을 나누고 COUNT를 이용하여 각 그룹에 데이터의 개..

[프로그래머스] 중복 제거하기 [내부링크]

programmers.co.kr/learn/courses/30/parts/17043 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 프로그래머스 SQL 고득점 Kit SUM, MAX, MIN [Level2] 중복 제거하기 ANIMAL_INS 테이블에 있는 동물의 이름이 공백과 중복을 제거하고 몇 개인지 구하는 문제였다 풀이 SELECT count(DISTINCT name) from ANIMAL_INS 중복값을 제거하고 COUNT 하기 위해서는 DISTINCT 키워드를 사용해야 된다 NAME 컬럼의 중복을 제거한 COUNT가 필요하였기 때문에 S..

[프로그래머스] 동물 수 구하기 [내부링크]

programmers.co.kr/learn/courses/30/parts/17043 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 프로그래머스 SQL 고득점 Kit SUM, MAX, MIN [Level2] 동물 수 구하기 ANIMAL_INS 테이블에 몇개의 데이터가 들어있는지 구하면 되는 문제였다 풀이 SELECT count(*) from ANIMAL_INS 개수를 구하고 싶을 때에는 SELECT 문에서 COUNT( 컬럼명 ) 함수를 사용하면 된다 특정 컬럼에서만의 데이터 개수를 확인해야 되는 문제는 아니기 때문에 COUNT( * )과 같이 ..

[프로그래머스] 최솟값 구하기 [내부링크]

programmers.co.kr/learn/courses/30/parts/17043 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 프로그래머스 SQL 고득점 Kit SUM, MAX, MIN [Level2] 최솟값 구하기 풀이 SELECT DATETIME from ANIMAL_INS order by datetime limit 1 상위 n개 레코드(rosyhuedoyou.tistory.com/66) 문제와 풀이가 동일하다

[프로그래머스] 최댓값 구하기 [내부링크]

programmers.co.kr/learn/courses/30/parts/17043 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 프로그래머스 SQL 고득점 Kit SUM, MAX, MIN [Level1] 최댓값 구하기 이전 문제인 상위 N개 레코드와 조회해야되는 컬럼명만 다른 문제였다 풀이 SELECT DATETIME from ANIMAL_INS order by DATETIME desc limit 1 상위 n개 레코드(rosyhuedoyou.tistory.com/66) 문제와 풀이가 동일하다

[프로그래머스] 상위 n개 레코드 [내부링크]

programmers.co.kr/learn/courses/30/parts/17042 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 프로그래머스 SQL 고득점 Kit SELECT [Level1] 상위 n개 레코드 가장 먼저 보호소에 들어온 동물 1마리의 이름만을 조회하는 문제였다 풀이 SELECT NAME from ANIMAL_INS order by DATETIME limit 1 데이터 N개만을 조회하고 싶을 경우, LIMIT N과 같이 SQL문을 작성하면 된다 문제에서는 가장 먼저 보호소에 들어온 동물 1마리의 이름을 요구하고 있기 때문에 D..

[프로그래머스] 여러 기준으로 정렬하기 [내부링크]

programmers.co.kr/learn/courses/30/parts/17042 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 프로그래머스 SQL 고득점 Kit SELECT [Level1] 여러 기준으로 정렬하기 ANIMAL_INS 테이블에서 모든 데이터를 ANIMAL_ID, NAME, DATETIME 컬럼만 조회하는데 일단 NAME으로 오름차순 정렬을 하고 이후 DATETIME으로 내림차순 정렬이 되어야한다 풀이 SELECT ANIMAL_ID, NAME, DATETIME from ANIMAL_INS order by name, DATETI..

[프로그래머스] 동물의 아이디와 이름 [내부링크]

programmers.co.kr/learn/courses/30/parts/17042 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 프로그래머스 SQL 고득점 Kit SELECT [Level1] 동물의 아이디와 이름 풀이 SELECT ANIMAL_ID,NAME from ANIMAL_INS order by ANIMAL_ID 모든 동물의 이름과 아이디를 아이디 순으로 정렬하여 조회하는 아주 간단한 문제였다 SELECT 로 조회를 원하는 컬럼명을 FROM에 조회를 원하는 테이블명을 ORDER BY에 정렬 기준이 될 컬럼명을 작성하면 된다

[프로그래머스] 아픈 동물 찾기 [내부링크]

programmers.co.kr/learn/courses/30/parts/17042 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 프로그래머스 SQL 고득점 Kit SELECT [Level1] 아픈 동물 찾기 아픈 동물의 아이디와 이름을 조회하여 결과를 아이디 순으로 정렬하라는 문제였다 INTAKE_CONDITION 컬럼에 Sick 라는 값이 있으면 아픈 동물이므로 비교적 간단한 문제였다 풀이 SELECT ANIMAL_ID, NAME from ANIMAL_INS where INTAKE_CONDITION = 'Sick' order by ANIM..

[프로그래머스] 어린 동물 찾기 [내부링크]

programmers.co.kr/learn/courses/30/parts/17042 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 프로그래머스 SQL 고득점 Kit SELECT [Level1] 어린 동물 찾기 풀이 SELECT ANIMAL_ID, NAME from ANIMAL_INS where INTAKE_CONDITION !='Aged' order by ANIMAL_ID; INTAKE_CONDITION 컬럼에 값이 'Aged'일 경우, 어린 동물이 아니다 따라서 'Aged'가 아닌 데이터만을 조회하면 된다 특정 조건의 데이터만 조회 하고 싶..

[프로그래머스] 역순 정렬하기 [내부링크]

programmers.co.kr/learn/courses/30/parts/17042 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 프로그래머스 SQL 고득점 Kit SELECT [Level1] 역순 정렬하기 NAME, DATETIME 이라는 특정 컬럼만 뽑아내어 ANIMAL_ID의 역순으로 정렬하라는 문제였다 풀이 SELECT NAME, DATETIME from ANIMAL_INS order by ANIMAL_ID desc order by 컬럼명 desc 를 해주면 해당 컬럼의 내림차순으로 정렬 할 수 있다 order by 의 기본 값은 AS..

[프로그래머스] 모든 레코드 조회하기 [내부링크]

programmers.co.kr/learn/courses/30/parts/17042 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 프로그래머스 SQL 고득점 Kit SELECT [Level1] 모든 레코드 조회하기 ANIMAL_ID순으로 정렬하여 테이블의 모든 데이터의 컬럼 전부를 출력하라는 간단한 문제였다 풀이 SELECT * from ANIMAL_INS order by ANIMAL_ID SELECT * 이라고 하면 컬럼 명을 하나 하나 적어주지 않아도 모든 컬럼을 가져 올 수 있다 ANIMAL_ID 순으로 정렬하기 위하여 'order by..

백준 2217 _ 로프 [내부링크]

www.acmicpc.net/problem/2217 2217번: 로프 N(1 ≤ N ≤ 100,000)개의 로프가 있다. 이 로프를 이용하여 이런 저런 물체를 들어올릴 수 있다. 각각의 로프는 그 굵기나 길이가 다르기 때문에 들 수 있는 물체의 중량이 서로 다를 수도 있다. 하 www.acmicpc.net 내 소스 코드 #include #include using namespace std; bool desc(int a, int b) { return a > b; } int main(void) { ios::sync_with_stdio(false); cin.tie(NULL); int N,max_n=0; int rope[100000]; cin >> N; for (int i = 0; i < N;i++) { ci..

백준 11404 _ 플로이드 [내부링크]

www.acmicpc.net/problem/11404 11404번: 플로이드 첫째 줄에 도시의 개수 n이 주어지고 둘째 줄에는 버스의 개수 m이 주어진다. 그리고 셋째 줄부터 m+2줄까지 다음과 같은 버스의 정보가 주어진다. 먼저 처음에는 그 버스의 출발 도시의 번호가 www.acmicpc.net 내 소스 코드 #include #include using namespace std; int bus[101][101] = { 0, }; int main(void) { ios::sync_with_stdio(false); cin.tie(NULL); int n, m, a, b, c; cin >> n >> m; for (int i = 0; i < m; i++) { cin >> a >> b >> c; if (!bus[..

백준 14889 _ 스타트와 링크 [내부링크]

www.acmicpc.net/problem/14889 14889번: 스타트와 링크 예제 2의 경우에 (1, 3, 6), (2, 4, 5)로 팀을 나누면 되고, 예제 3의 경우에는 (1, 2, 4, 5), (3, 6, 7, 8)로 팀을 나누면 된다. www.acmicpc.net 내 소스 코드 #include #include #include const int MAX = 2147483647; using namespace std; int main(void) { ios::sync_with_stdio(false); cin.tie(NULL); int stats[20][20]; int N,result=MAX; cin >> N; for (int i = 0; i < N; i++) { for (int j = 0; j <..

백준 11000 _ 강의실 배정 [내부링크]

www.acmicpc.net/problem/11000 11000번: 강의실 배정 첫 번째 줄에 N이 주어진다. (1 ≤ N ≤ 200,000) 이후 N개의 줄에 Si, Ti가 주어진다. (1 ≤ Si < Ti ≤ 109) www.acmicpc.net 내 소스 코드 #include #include #include #include using namespace std; class cmp { public: bool operator()(pair pq1, pair pq2) { if (pq1.first == pq2.first) { return pq1.second > pq2.second; } else { return pq1.first > pq2.first; } } }; int main(void) { ios::syn..

백준 18353 _ 병사 배치하기 [내부링크]

www.acmicpc.net/problem/18353 18353번: 병사 배치하기 첫째 줄에 N이 주어진다. (1 ≤ N ≤ 2,000) 둘째 줄에 각 병사의 전투력이 공백을 기준으로 구분되어 차례대로 주어진다. 각 병사의 전투력은 10,000,000보다 작거나 같은 자연수이다. www.acmicpc.net 내 소스 코드 #include #include #include using namespace std; int main(void) { ios::sync_with_stdio(false); cin.tie(NULL); int dp[2001]; int seq[2001]; int N, max_dp = 0; cin >> N; for (int i = 0; i < N; i++) { cin >> seq[i]; dp[..

백준 1764 _ 듣보잡 [내부링크]

www.acmicpc.net/problem/1764 1764번: 듣보잡 첫째 줄에 듣도 못한 사람의 수 N, 보도 못한 사람의 수 M이 주어진다. 이어서 둘째 줄부터 N개의 줄에 걸쳐 듣도 못한 사람의 이름과, N+2째 줄부터 보도 못한 사람의 이름이 순서대로 주어진다. www.acmicpc.net 내 소스 코드 #include #include #include #include #include using namespace std; int main(void) { ios::sync_with_stdio(false); cin.tie(NULL); int N, M; vector vec; cin >> N >> M; string temp; map m; while (N--) { cin >> temp; m.insert(..

백준 12865 _ 평범한 배낭 [내부링크]

www.acmicpc.net/problem/12865 12865번: 평범한 배낭 첫 줄에 물품의 수 N(1 ≤ N ≤ 100)과 준서가 버틸 수 있는 무게 K(1 ≤ K ≤ 100,000)가 주어진다. 두 번째 줄부터 N개의 줄에 거쳐 각 물건의 무게 W(1 ≤ W ≤ 100,000)와 해당 물건의 가치 V(0 ≤ V ≤ 1,000) www.acmicpc.net 내 소스 코드 #include #include #include using namespace std; int N, K, dp[101][100001], W[101], V[101]; int main(void) { ios::sync_with_stdio(false); cin.tie(NULL); int N, K; cin >> N >> K; for (in..

백준 11053 _ 가장 긴 증가하는 부분 수열 [내부링크]

www.acmicpc.net/problem/11053 11053번: 가장 긴 증가하는 부분 수열 수열 A가 주어졌을 때, 가장 긴 증가하는 부분 수열을 구하는 프로그램을 작성하시오. 예를 들어, 수열 A = {10, 20, 10, 30, 20, 50} 인 경우에 가장 긴 증가하는 부분 수열은 A = {10, 20, 10, 30, 20, 50} 이 www.acmicpc.net 내 소스 코드 #include #include #include using namespace std; int main(void) { ios::sync_with_stdio(false); cin.tie(NULL); int dp[1001]; int seq[1001]; int N, max_dp = 0; cin >> N; for (int i..

백준 2624 _ 동전 바꿔주기 [내부링크]

www.acmicpc.net/problem/2624 2624번: 동전 바꿔주기 명보네 동네 가게의 현금 출납기에는 k 가지 동전이 각각 n1, n2, … , nk개 씩 들어있다. 가게 주인은 명보에게 T원의 지폐를 동전으로 바꿔 주려고 한다. 이때, 동전 교환 방법은 여러 가지가 있을 www.acmicpc.net 내 소스 코드 #include #include #include #include using namespace std; int dp[101][10001] = { 0, }; int main(void) { ios::sync_with_stdio(false); cin.tie(NULL); vector vec; int value, case_count, coint_value, coint_count; cin ..

백준 5546 _ 파스타 [내부링크]

www.acmicpc.net/problem/5546 5546번: 파스타 상근이는 매일 저녁으로 파스타를 만들어 먹는다. 상근이가 만들 수 있는 파스타는 총 세 종류로 토마토 소스, 크림 소스, 바질 소스이다. 상근이는 앞으로 N일 동안 먹을 파스타를 계획하려고 www.acmicpc.net 내 소스 코드 #include #include using namespace std; int main(void) { ios::sync_with_stdio(false); cin.tie(NULL); int a[101] = { 0, }, dp[101][4][4] = { 0, }; int N, K; cin >> N >> K; while (K--) { int t1, t2; cin >> t1 >> t2; a[t1] = t2; }..

백준 1240 _ 노드사이의 거리 [내부링크]

www.acmicpc.net/problem/1240 1240번: 노드사이의 거리 N(2≤N≤1,000)개의 노드로 이루어진 트리가 주어지고 M(M≤1,000)개의 두 노드 쌍을 입력받을 때 두 노드 사이의 거리를 출력하라. www.acmicpc.net 내 소스 코드 #include #include #include using namespace std; vector tree[1001]; int Distance[1001][1001]; int Visited[1001]; void dfs(int start, int k, int len) { Distance[start][k] = len; int size = tree[k].size(); for (int i = 0; i < size; i++) { int route =..

백준 2178 _ 미로 탐색 [내부링크]

www.acmicpc.net/problem/2178 2178번: 미로 탐색 첫째 줄에 두 정수 N, M(2 ≤ N, M ≤ 100)이 주어진다. 다음 N개의 줄에는 M개의 정수로 미로가 주어진다. 각각의 수들은 붙어서 입력으로 주어진다. www.acmicpc.net 내 소스 코드 #include #include #include #include using namespace std; int N, M; int MAP[101][101]; string temp; int Route[4][2] = { {0,-1},{1,0},{0,1},{-1,0} }; void bfs() { queue q; q.push(make_pair(0, 0)); int nx, ny; pair current; while (!q.empty())..

백준 11722 _ 가장 긴 감소하는 부분 수열 [내부링크]

www.acmicpc.net/problem/11722 11722번: 가장 긴 감소하는 부분 수열 수열 A가 주어졌을 때, 가장 긴 감소하는 부분 수열을 구하는 프로그램을 작성하시오. 예를 들어, 수열 A = {10, 30, 10, 20, 20, 10} 인 경우에 가장 긴 감소하는 부분 수열은 A = {10, 30, 10, 20, 20, 10} www.acmicpc.net 내 소스 코드 #include #include #include using namespace std; int main(void) { ios::sync_with_stdio(false); cin.tie(NULL); int dp[1001]; int seq[1001]; int N,max_dp=0; cin >> N; for (int i = 0;..

백준 10026 _ 적록색약 [내부링크]

www.acmicpc.net/problem/10026 10026번: 적록색약 적록색약은 빨간색과 초록색의 차이를 거의 느끼지 못한다. 따라서, 적록색약인 사람이 보는 그림은 아닌 사람이 보는 그림과는 좀 다를 수 있다. 크기가 N×N인 그리드의 각 칸에 R(빨강), G(초록) www.acmicpc.net 내 소스 코드 #include #include #include #include using namespace std; vector RGB; vector RB; int route[4][2] = { { -1,0 },{ 0,-1 },{ 0,1 },{ 1,0 } }; bool visit[101][101]; int N; void DFS(int init_x, int init_y, char color) { visi..

백준 1003 _ 피보나치 함수 [내부링크]

www.acmicpc.net/problem/1003 1003번: 피보나치 함수 각 테스트 케이스마다 0이 출력되는 횟수와 1이 출력되는 횟수를 공백으로 구분해서 출력한다. www.acmicpc.net 내 소스 코드 #include using namespace std; int memo[41][2] = { {1,0},{0,1} };//{0개수, 1개수} void fibo() { for (int i = 2; i < 41; i++) { memo[i][0] = memo[i - 1][0] + memo[i - 2][0]; memo[i][1] = memo[i - 1][1] + memo[i - 2][1]; } } int main(void) { ios::sync_with_stdio(false); cin.tie(NULL..

백준 2573 _ 빙산 [내부링크]

www.acmicpc.net/problem/2573 2573번: 빙산 첫 줄에는 이차원 배열의 행의 개수와 열의 개수를 나타내는 두 정수 N과 M이 한 개의 빈칸을 사이에 두고 주어진다. N과 M은 3 이상 300 이하이다. 그 다음 N개의 줄에는 각 줄마다 배열의 각 행을 www.acmicpc.net 내 소스 코드 #include #include #include #include #include int route[4][2] = { {-1,0},{0,-1},{0,1},{1,0} }; bool visit[301][301]; using namespace std; int v[301][301]; int N, M; void DFS(int init_x, int init_y) { visit[init_x][ini..

백준 1541 _ 잃어버린 괄호 [내부링크]

www.acmicpc.net/problem/1541 1541번: 잃어버린 괄호 첫째 줄에 식이 주어진다. 식은 ‘0’~‘9’, ‘+’, 그리고 ‘-’만으로 이루어져 있고, 가장 처음과 마지막 문자는 숫자이다. 그리고 연속해서 두 개 이상의 연산자가 나타나지 않고, 5자리보다 www.acmicpc.net 내 소스 코드 #include #include #include using namespace std; int main(void) { ios::sync_with_stdio(false); cin.tie(NULL); string s; cin >> s; string temp; vectorvec; //문자와 숫자 분리 for (int i = 0; i < s.size(); i++) { if (s[i] == '+' ..

백준 11047 _ 동전 0 [내부링크]

www.acmicpc.net/problem/11047 11047번: 동전 0 첫째 줄에 N과 K가 주어진다. (1 ≤ N ≤ 10, 1 ≤ K ≤ 100,000,000) 둘째 줄부터 N개의 줄에 동전의 가치 Ai가 오름차순으로 주어진다. (1 ≤ Ai ≤ 1,000,000, A1 = 1, i ≥ 2인 경우에 Ai는 Ai-1의 배수) www.acmicpc.net 내 소스 코드 #include #include using namespace std; int main(void) { ios::sync_with_stdio(false); cin.tie(NULL); int N, K,result=0; cin >> N >> K; vector coin; while (N--) { int temp; cin>>temp; coi..

백준 1620 _ 나는야 포켓몬 마스터 이다솜 [내부링크]

www.acmicpc.net/problem/1620 1620번: 나는야 포켓몬 마스터 이다솜 첫째 줄에는 도감에 수록되어 있는 포켓몬의 개수 N이랑 내가 맞춰야 하는 문제의 개수 M이 주어져. N과 M은 1보다 크거나 같고, 100,000보다 작거나 같은 자연수인데, 자연수가 뭔지는 알지? 모르면 www.acmicpc.net 내 소스 코드 #include #include #include using namespace std; int main(void) { ios::sync_with_stdio(false); cin.tie(NULL); //문자열 기준으로 저장 map hash1; //숫자 기준으로 저장 string hash2[100001]; int N, M; cin >> N >> M; string s; f..

백준 9753 _ 짝 곱 [내부링크]

www.acmicpc.net/problem/9753 9753번: 짝 곱 정수 K (1 ≤ K ≤ 100,000)가 주어진다. 이때, K보다 크거나 같은 서로 다른 소수의 곱 중에서 가장 작은 곱을 찾는 프로그램을 작성하시오. www.acmicpc.net 내 소스 코드 #include #include #include using namespace std; int main(void) { ios::sync_with_stdio(false); cin.tie(NULL); int vec[50002]; vector v; for (int i = 0; i > K; int answer; //이분탐색으로 원하는 값 찾기 int low = 0, high = mul.size() - 1; while (low = K) { answ..

백준 9934 _ 완전 이진 트리 [내부링크]

www.acmicpc.net/problem/9934 9934번: 완전 이진 트리 상근이는 슬로베니아의 도시 Donji Andrijevci를 여행하고 있다. 이 도시의 도로는 깊이가 K인 완전 이진 트리를 이루고 있다. 깊이가 K인 완전 이진 트리는 총 2K-1개의 노드로 이루어져 있다. (아래 www.acmicpc.net 내 소스 코드 #include #include #include using namespace std; int tree[10][2048]; int main(void) { ios::sync_with_stdio(false); cin.tie(NULL); int K; cin >> K; int level = K; vector vec; for (int i = 0; i < pow(2, K) -..

백준 9095 _ 1, 2, 3 더하기 [내부링크]

www.acmicpc.net/problem/9095 9095번: 1, 2, 3 더하기 각 테스트 케이스마다, n을 1, 2, 3의 합으로 나타내는 방법의 수를 출력한다. www.acmicpc.net 내 소스 코드 #include using namespace std; int n, result=0; void plus_count(int x) { if (x == n) { result++; return; } else if (x > n) { return; } plus_count(x + 1); plus_count(x + 2); plus_count(x + 3); } int main(void) { ios::sync_with_stdio(false); cin.tie(NULL); int T; cin >> T; while ..

백준 4949 _ 균형잡힌 세상 [내부링크]

www.acmicpc.net/problem/4949 4949번: 균형잡힌 세상 하나 또는 여러줄에 걸쳐서 문자열이 주어진다. 각 문자열은 영문 알파벳, 공백, 소괄호("( )") 대괄호("[ ]")등으로 이루어져 있으며, 길이는 100글자보다 작거나 같다. 입력의 종료조건으로 맨 마 www.acmicpc.net 내 소스 코드 #include #include #include using namespace std; int main(void) { ios::sync_with_stdio(false); cin.tie(NULL); string s; stack st1; while (1) { getline(cin, s); if (s == ".") { break; } for (int i = 0; i < s.lengt..

백준 1758 _ 알바생 강호 [내부링크]

https://www.acmicpc.net/problem/1758 1758번: 알바생 강호 첫째 줄에 스타박스 앞에 서 있는 사람의 수 N이 주어진다. N은 100,000보다 작은 자연수이다. 둘째 줄부터 총 N개의 줄에 각 사람이 주려고 하는 팁이 주어진다. 팁은 100,000보다 작거나 같은 자연수 www.acmicpc.net 내 소스 코드 #include #include #include using namespace std; bool desc(int i, int j) { return j < i; } int main(void) { ios::sync_with_stdio(false); cin.tie(NULL); int N; long long sum = 0; vector vec; cin >> N; whi..

백준 1302 _ 베스트셀러 [내부링크]

https://www.acmicpc.net/problem/1302 1302번: 베스트셀러 첫째 줄에 오늘 하루 동안 팔린 책의 개수 N이 주어진다. 이 값은 1,000보다 작거나 같은 자연수이다. 둘째부터 N개의 줄에 책의 제목이 입력으로 들어온다. 책의 제목의 길이는 50보다 작거나 같고 www.acmicpc.net 내 소스 코드 #include #include #include #include using namespace std; int main(void) { ios::sync_with_stdio(false); cin.tie(NULL); int N; int m = 0, result=0, max_n=0; vector vec; cin >> N; while (N--) { string temp; cin >..

백준 1520 _ 내리막 길 [내부링크]

https://www.acmicpc.net/problem/1520 1520번: 내리막 길 여행을 떠난 세준이는 지도를 하나 구하였다. 이 지도는 아래 그림과 같이 직사각형 모양이며 여러 칸으로 나뉘어져 있다. 한 칸은 한 지점을 나타내는데 각 칸에는 그 지점의 높이가 쓰여 있으 www.acmicpc.net 내 소스 코드 #include using namespace std; int map[500][500]; int result[500][500] = { -1, }; int M, N; int moved[4][2] = { {-1,0},{0,-1},{0,1},{1,0} }; int func(int x, int y) { //최하단에 도착했을 경우 if (x == M - 1 && y == N - 1) { ret..

백준 1018 _ 체스판 다시 칠하기 [내부링크]

https://www.acmicpc.net/problem/1018 1018번: 체스판 다시 칠하기 첫째 줄에 N과 M이 주어진다. N과 M은 8보다 크거나 같고, 50보다 작거나 같은 자연수이다. 둘째 줄부터 N개의 줄에는 보드의 각 행의 상태가 주어진다. B는 검은색이며, W는 흰색이다. www.acmicpc.net 내 소스 코드 #include #include #include using namespace std; vector white = {{ "WBWBWBWB" },{ "BWBWBWBW" },{ "WBWBWBWB" },{ "BWBWBWBW" },{ "WBWBWBWB" },{ "BWBWBWBW" },{ "WBWBWBWB" },{ "BWBWBWBW" }}; vector black = { { "BWB..

백준 11399 _ ATM [내부링크]

https://www.acmicpc.net/problem/11399 11399번: ATM 첫째 줄에 사람의 수 N(1 ≤ N ≤ 1,000)이 주어진다. 둘째 줄에는 각 사람이 돈을 인출하는데 걸리는 시간 Pi가 주어진다. (1 ≤ Pi ≤ 1,000) www.acmicpc.net 내 소스 코드 #include #include #include using namespace std; int main(void) { ios::sync_with_stdio(false); cin.tie(NULL); vector vec; int N, temp,sum=0; cin >> N; while (N--) { cin >> temp; vec.push_back(temp); } sort(vec.begin(), vec.end()); ..

백준 16637 _ 괄호 추가하기 [내부링크]

https://www.acmicpc.net/problem/16637 16637번: 괄호 추가하기 첫째 줄에 수식의 길이 N(1 ≤ N ≤ 19)가 주어진다. 둘째 줄에는 수식이 주어진다. 수식에 포함된 정수는 모두 0보다 크거나 같고, 9보다 작거나 같다. 문자열은 정수로 시작하고, 연산자와 정수가 www.acmicpc.net 내 소스 코드 #include #include using namespace std; string s; int N, max_n = -987654321987654321; int calcu(char op, int n1, int n2) { int result = 0; switch (op) { case '+': result = n1 + n2; break; case '-': result ..

백준 9421 _ 소수상근수 [내부링크]

https://www.acmicpc.net/problem/9421 9421번: 소수상근수 문제 양의 정수 n의 각 자리수의 제곱의 합을 계산한다. 그렇게 해서 나온 합도 각 자리수의 제곱의 합을 계산한다. 이렇게 반복해서 1이 나온다면, n을 상근수라고 한다. 700은 상근수이다. 72 + 02 www.acmicpc.net 내 소스 코드 #include #include using namespace std; int dp[1000001] = { 1, }; //0->한번 방문, -1->아님,1->맞음 int func(int n) { int sum = 0; while (n != 0) { sum += (n % 10) * (n % 10); n /= 10; } if (dp[sum]==-1) { return dp[..

백준 4811 _ 알약 [내부링크]

https://www.acmicpc.net/problem/4811 4811번: 알약 문제 70세 박종수 할아버지는 매일 매일 약 반알을 먹는다. 손녀 선영이는 종수 할아버지에게 약이 N개 담긴 병을 선물로 주었다. 첫째 날에 종수는 병에서 약 하나를 꺼낸다. 그 다음, 그 약을 반 www.acmicpc.net 내 소스 코드 #include int N; long long int dp[31][31] = { 0, }; using namespace std; long long int pill(int w, int h) { if (dp[w][h]) { return dp[w][h]; } if (w == 0) { return 1; } dp[w][h] = pill(w-1, h + 1); if (h > 0) { dp[w..

백준 1074 _ Z [내부링크]

https://www.acmicpc.net/problem/1074 1074번: Z 한수는 2차원 배열 (항상 2^N * 2^N 크기이다)을 Z모양으로 탐색하려고 한다. 예를 들어, 2*2배열을 왼쪽 위칸, 오른쪽 위칸, 왼쪽 아래칸, 오른쪽 아래칸 순서대로 방문하면 Z모양이다. 만약, 2차원 www.acmicpc.net 내 소스 코드 #include using namespace std; int Route[][2] = { {0,0}, {0,1}, {1,0}, {1,1} }; int r, c; int result = 0; bool z(int x, int y, long long int N) { if (N > 2) { if (z(x, y, N / 2)) { return true; } else if (z..

백준 2961 _ 도영이가 만든 맛있는 음식 [내부링크]

https://www.acmicpc.net/problem/2961 2961번: 도영이가 만든 맛있는 음식 문제 도영이는 짜파구리 요리사로 명성을 날렸었다. 이번에는 이전에 없었던 새로운 요리에 도전을 해보려고 한다. 지금 도영이의 앞에는 재료가 N개 있다. 도영이는 각 재료의 신맛 S와 쓴맛 B www.acmicpc.net 내 소스 코드 #include using namespace std; int flavor[10][2]; int m = 1000000000; int N; void flav(int n, int s, int b) { if (s >= b && s - b < m) { m = s - b; } else if (s < b && b - s < m) { m = b - s; } for (int i ..

백준 7568 _ 덩치 [내부링크]

https://www.acmicpc.net/problem/7568 7568번: 덩치 우리는 사람의 덩치를 키와 몸무게, 이 두 개의 값으로 표현하여 그 등수를 매겨보려고 한다. 어떤 사람의 몸무게가 x kg이고 키가 y cm라면 이 사람의 덩치는 (x,y)로 표시된다. 두 사람 A 와 B의 덩 www.acmicpc.net 소스 코드 #include using namespace std; int xy[50][2]; int main(void) { ios::sync_with_stdio(false); cin.tie(NULL); int N, x, y; cin >> N; for (int i = 0; i < N; i++) { cin >> xy[i][0] >> xy[i][1]; } for (int i = 0; i ..

백준 11050 _ 이항 계수 1 [내부링크]

https://www.acmicpc.net/problem/11050 11050번: 이항 계수 1 첫째 줄에 \(N\)과 \(K\)가 주어진다. (1 ≤ \(N\) ≤ 10, 0 ≤ \(K\) ≤ \(N\)) www.acmicpc.net 소스 코드 #include using namespace std; int main(void) { ios::sync_with_stdio(false); cin.tie(NULL); int N, K; cin >> N >> K; int c = 1; int s = 1; for (int i = N; i > K; i--) { c *= i; } for (int i = 1; i

백준 2798 _ 블랙잭 [내부링크]

https://www.acmicpc.net/problem/2798 2798번: 블랙잭 문제 카지노에서 제일 인기 있는 게임 블랙잭의 규칙은 상당히 쉽다. 카드의 합이 21을 넘지 않는 한도 내에서, 카드의 합을 최대한 크게 만드는 게임이다. 블랙잭은 카지노마다 다양한 규정이 www.acmicpc.net 내 소스 코드 #include using namespace std; int main(void) { ios::sync_with_stdio(false); cin.tie(NULL); int N, M, temp; int sum, max = 0; int num[100] = { 0, }; cin >> N >> M; for (int i = 0; i < N; i++) { cin >> num[i]; } for (..

백준 11866 _ 요세푸스 문제 0 [내부링크]

https://www.acmicpc.net/problem/11866 11866번: 요세푸스 문제 0 첫째 줄에 N과 K가 빈 칸을 사이에 두고 순서대로 주어진다. (1 ≤ K ≤ N ≤ 1,000) www.acmicpc.net 내 소스 코드 #include #include #include using namespace std; int main(void) { ios::sync_with_stdio(false); cin.tie(NULL); int n, k; cin >> n >> k; int temp = k-1; vector vec; vector tem; for (int i = 1; i

백준 1157 _ 단어 공부 [내부링크]

https://www.acmicpc.net/problem/1157 1157번: 단어 공부 알파벳 대소문자로 된 단어가 주어지면, 이 단어에서 가장 많이 사용된 알파벳이 무엇인지 알아내는 프로그램을 작성하시오. 단, 대문자와 소문자를 구분하지 않는다. www.acmicpc.net 내 소스 코드 #include #include #include using namespace std; int main(void) { ios::sync_with_stdio(false); cin.tie(NULL); int result[26] = { 0, }; int max = 0, answer; bool check = true; string s; cin >> s; for (int i = 0; i < s.length(); i++) {..

백준 1026 _ 보물 [내부링크]

https://www.acmicpc.net/problem/1026 1026번: 보물 첫째 줄에 N이 주어진다. 둘째 줄에는 A에 있는 N개의 수가 순서대로 주어지고, 셋째 줄에는 B에 있는 수가 순서대로 주어진다. N은 50보다 작거나 같은 자연수이고, A와 B의 각 원소는 100보다 작거나 같은 음이 아닌 정수이다. www.acmicpc.net 내 소스 코드 #include #include #include using namespace std; int main(void) { ios::sync_with_stdio(false); cin.tie(NULL); vector vec1, vec2; int n,sum=0; cin >> n; for (int i = 0; i < n; i++) { int temp; ci..

백준 1978 _ 소수 찾기 [내부링크]

https://www.acmicpc.net/problem/1978 1978번: 소수 찾기 첫 줄에 수의 개수 N이 주어진다. N은 100이하이다. 다음으로 N개의 수가 주어지는데 수는 1,000 이하의 자연수이다. www.acmicpc.net 내 소스 코드 #include #include #include using namespace std; int main(void) { ios::sync_with_stdio(false); cin.tie(NULL); vectorvec; vectordecimal; int n,max=0,count=0; cin >> n; for (int i = 0; i < n; i++) { int temp; cin >> temp; vec.push_back(temp); if (temp > m..

백준 2960 _ 에라토스테네스의 체 [내부링크]

https://www.acmicpc.net/problem/2960 2960번: 에라토스테네스의 체 문제 에라토스테네스의 체는 N보다 작거나 같은 모든 소수를 찾는 유명한 알고리즘이다. 이 알고리즘은 다음과 같다. 2부터 N까지 모든 정수를 적는다. 아직 지우지 않은 수 중 가장 작은 수를 찾는다. 이것을 P라고 하고, 이 수는 소수이다. P를 지우고, 아직 지우지 않은 P의 배수를 크기 순서대로 지운다. 아직 모든 수를 지우지 않았다면, 다시 2번 단계로 간다. N, K가 주어졌을 때, K번째 지우는 수를 구하는 프로그램을 작성하시오. 입력 첫째 줄에 www.acmicpc.net 내 소스 코드 #include #include using namespace std; int main(void) { ios:..

백준 3896 _ 소수 사이 수열 [내부링크]

https://www.acmicpc.net/problem/3896 3896번: 소수 사이 수열 문제 연속한 소수 p와 p+n이 있을 때, 그 사이에 있는 n-1개의 합성수(소수나 1이 아닌 양의 정수)는 길이가 n인 소수 사이 수열라고 부른다. 양의 정수 k가 주어졌을 때, k를 포함하는 소수 사이 수열의 길이를 구하는 프로그램을 작성하시오. k를 포함하는 소수 사이 수열이 없을 때는 길이가 0이다. 예를 들어, 소수 23과 29의 소수 사이 수열은 {24, 25, 26, 27, 28}이고, 길이는 6이다. 입력 첫째 줄에 테스트 케이스의 개수 T www.acmicpc.net 내 소스 코드 #include #include using namespace std; int main(void) { ios::s..

백준 1644 _ 소수의 연속합 [내부링크]

https://www.acmicpc.net/problem/1644 1644번: 소수의 연속합 문제 하나 이상의 연속된 소수의 합으로 나타낼 수 있는 자연수들이 있다. 몇 가지 자연수의 예를 들어 보면 다음과 같다. 3 : 3 (한 가지) 41 : 2+3+5+7+11+13 = 11+13+17 = 41 (세 가지) 53 : 5+7+11+13+17 = 53 (두 가지) 하지만 연속된 소수의 합으로 나타낼 수 없는 자연수들도 있는데, 20이 그 예이다. 7+13을 계산하면 20이 되기는 하나 7과 13이 연속이 아니기에 적합한 표현이 아니다. 또한 한 www.acmicpc.net 내 소스 코드 #include #include using namespace std; int main(void) { ios::syn..

백준 1016 _ 제곱 ㄴㄴ 수 [내부링크]

https://www.acmicpc.net/problem/1016 1016번: 제곱 ㄴㄴ 수 첫째 줄에 min과 max가 주어진다. min은 1보다 크거나 같고, 1,000,000,000,000보다 작거나 같은 자연수이고, max는 min보다 크거나 같고, min+1,000,000보다 작거나 같은 자연수이다. www.acmicpc.net 내 소스 코드 #include #include using namespace std; int main(void) { ios::sync_with_stdio(false); cin.tie(NULL); long long min, max,count=0; cin >> min >> max; vector vec; for (long long i = min; i

AWS S3 버킷으로 Vue 프로젝트 배포 [내부링크]

1. S3 버킷 만들기 2. 권한 -> 퍼블릭 액세스 차단 3. 권한 -> 버킷 정책 { "Version": "2012-10-17", "Statement": [ { "Sid": "PublicReadGetObject", "Effect": "Allow", "Principal": "*", "Action": "s3:GetObject", "Resource": "arn:aws:s3:::S3버킷이름/*" } ] } 위와 같이 입력하고 저장 4. Vue 프로젝트 build npm run build 다음과 같이 입력하면 프로젝트 build가 되고, 프로젝트 폴더에 'dist' 폴더가 생성됨 5. S3 버킷에 파일 업로드 6. 정적 웹 사이트 호스팅 7. 엔드 포인트 주소로 접근

[GitHub] Git GitHub 시작하기 [내부링크]

01. Git 설치 https://git-scm.com/ 02. GitHub 회원가입 https://github.com/ Build software better, together GitHub is where people build software. More than 40 million people use GitHub to discover, fork, and contribute to over 100 million projects. github.com 03. Git Bash 실행 및 깃허브 user 정보 설정 git config --global user.name "유저네임" git config --global user.email "깃허브 이메일" 사용자 이름과 이메일 주소 설정 최초로 단 한번만 등록하면 되..

백준 10773 _ 제로 [내부링크]

https://www.acmicpc.net/problem/10773 10773번: 제로 문제 나코더 기장 재민이는 동아리 회식을 준비하기 위해서 장부를 관리하는 중이다. 재현이는 재민이를 도와서 돈을 관리하는 중인데, 애석하게도 항상 정신없는 재현이는 돈을 실수로 잘못 부르는 사고를 치기 일쑤였다. 재현이는 잘못된 수를 부를 때마다 0을 외쳐서, 가장 최근에 재민이가 쓴 수를 지우게 시킨다. 재민이는 이렇게 모든 수를 받아 적은 후 그 수의 합을 알고 싶어 한다. 재민이를 도와주자! 입력 첫 번째 줄에 정수 K가 주어진다. (1 ≤ K ≤ www.acmicpc.net 내 소스 코드 #include #include using namespace std; int main(void) { ios::sync_w..

백준 10828 _ 스택 [내부링크]

https://www.acmicpc.net/problem/10828 10828번: 스택 첫째 줄에 주어지는 명령의 수 N (1 ≤ N ≤ 10,000)이 주어진다. 둘째 줄부터 N개의 줄에는 명령이 하나씩 주어진다. 주어지는 정수는 1보다 크거나 같고, 100,000보다 작거나 같다. 문제에 나와있지 않은 명령이 주어지는 경우는 없다. www.acmicpc.net 내 소스 코드 #include #include #include using namespace std; int main(void) { ios::sync_with_stdio(false); cin.tie(NULL); stack st; int n,num; string s; cin >> num; for (int i = 0; i < num; i++) {..

백준 4949 _ 균형잡힌 세상 [내부링크]

https://www.acmicpc.net/problem/4949 4949번: 균형잡힌 세상 문제 세계는 균형이 잘 잡혀있어야 한다. 양과 음, 빛과 어둠 그리고 왼쪽 괄호와 오른쪽 괄호처럼 말이다. 정민이의 임무는 어떤 문자열이 주어졌을 때, 괄호들의 균형이 잘 맞춰져 있는지 판단하는 프로그램을 짜는 것이다. 문자열에 포함되는 괄호는 소괄호("()") 와 대괄호("[]")로 2종류이고, 문자열이 균형을 이루는 조건은 아래와 같다. 모든 왼쪽 소괄호("(")는 오른쪽 소괄호(")")와만 짝을 이룰 수 있다. 모든 왼쪽 대괄호("[")는 오른쪽 대 www.acmicpc.net 내 소스 코드 #include #include #include using namespace std; int main(void) ..

백준 1874 _ 스택 수열 [내부링크]

https://www.acmicpc.net/problem/1874 1874번: 스택 수열 1부터 n까지에 수에 대해 차례로 [push, push, push, push, pop, pop, push, push, pop, push, push, pop, pop, pop, pop, pop] 연산을 수행하면 수열 [4, 3, 6, 8, 7, 5, 2, 1]을 얻을 수 있다. www.acmicpc.net 내 소스 코드 #include #include #include using namespace std; int main(void) { ios::sync_with_stdio(false); cin.tie(NULL); int num,n; vector answer; stack s; vector a; cin >> num; f..

[Vue] Vue 프로젝트 시작하기 [내부링크]

01. vue cli 다운로드 npm install -g @vue/cli 02. 프로젝트 생성 cd 디렉터리 vue create 프로젝트명 원하는 디렉터리로 이동한 후 프로젝트 생성 03. 프로젝트 세팅 Router - 주소에 따른 화면 렌더링 기능 Vuex - 상태관리 라이브러리. 컴포넌트 간의 통신 및 데이터 전달을 유기적으로 관리하는 저장소 CSS pre-processors - css 전처리기 Save this as a preset for future projects? – 해당 설정을 다음 프로젝트에도 사용할 것인지 04. 프로젝트 실행 cd 프로젝트명 npm run serve

백준 2920 _ 음계 [내부링크]

https://www.acmicpc.net/problem/2920 2920번: 음계 다장조는 c d e f g a b C, 총 8개 음으로 이루어져있다. 이 문제에서 8개 음은 다음과 같이 숫자로 바꾸어 표현한다. c는 1로, d는 2로, ..., C를 8로 바꾼다. 1부터 8까지 차례대로 연주한다면 ascending, 8 www.acmicpc.net 내 소스 코드 #include int main() { int arr[8]; int temp=0; //ascending이 나오는 케이스 int asc[] = { 1,2,3,4,5,6,7,8 }; //descending이 나오는 케이스 int des[] = { 8,7,6,5,4,3,2,1 }; for (int a = 0; a < 8; a++) { scanf..

백준 1152 _ 단어의 개수 [내부링크]

https://www.acmicpc.net/problem/1152 1152번: 단어의 개수 첫 줄에 영어 대소문자와 공백으로 이루어진 문자열이 주어진다. 이 문자열의 길이는 1,000,000을 넘지 않는다. 단어는 공백 한 개로 구분되며, 공백이 연속해서 나오는 경우는 없다. 또한 문자열 www.acmicpc.net 내 소스 코드 #include #include using namespace std; inline std::string& ltrim(std::string& s, const char* t = " \t\n\r\f\v") { s.erase(0, s.find_first_not_of(t)); return s; } inline std::string& rtrim(std::string& s, const ..

백준 1431 _ 시리얼 번호 [내부링크]

https://www.acmicpc.net/problem/1431 1431번: 시리얼 번호 첫째 줄에 기타의 개수 N이 주어진다. N은 50보다 작거나 같다. 둘째 줄부터 N개의 줄에 시리얼 번호가 하나씩 주어진다. 시리얼 번호의 길이는 최대 50이고, 알파벳 대문자 또는 숫자로만 이루어 www.acmicpc.net 내 소스 코드 #include #include #include #include using namespace std; //정렬을 위한 사용자 정의 함수 지정 bool compare(string serial1, string serial2) { int sum1 = 0, sum2=0; //두 시리얼의 길이가 같지 않을 경우 if (serial1.length() != serial2.length()..

백준 1158 _ 요세푸스 문제 [내부링크]

https://www.acmicpc.net/problem/1158 1158번: 요세푸스 문제 첫째 줄에 N과 K가 빈 칸을 사이에 두고 순서대로 주어진다. (1 ≤ K ≤ N ≤ 5,000) www.acmicpc.net 내 소스 코드 #include #include using namespace std; int main(void) { ios::sync_with_stdio(false); cin.tie(NULL); int n, k,index=0; vectorvec; cin >> n >> k; for (int i = 1; i