전체 글(73)
-
프로그래머스 - 짝지어 제거하기(java)
문제 https://school.programmers.co.kr/learn/courses/30/lessons/12973 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제를 읽어보면 연속된 문자가 있으면 제거해준다고 나왔다. 이러한 문제는 자바에서 제공하는 Stack을 이용해서 풀면 편한다. 1. 문자열을 char형 배열로 만들어준다. 2. Stack을 이용하여 푼다. 나의 풀이 class Solution { public int solution(String s) { char[] chars = s.toCharArray(); Stack stack = new ..
2023.01.18 -
프로그래머스 다음 큰 숫자 java
문제 https://school.programmers.co.kr/learn/courses/30/lessons/12911 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 숫자 n이 주어졌을 때 1. n보다 크다. 2. n이 이진수일 때 1의 개수와 같다. 3. 1, 2번을 만족하는 가장 작은 수 출력 2번 조건에 대한 메소드를 따로 만들고 n+1부터 순차적으로 비교를 하면 되겠다는 생각을 했다. 나의 풀이 class Solution { public int solution(int n) { int answer = n; int oneCount = count(n);..
2023.01.12 -
프로그래머스 피보나치 수
문제 https://school.programmers.co.kr/learn/courses/30/lessons/12945 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 이번 문제를 풀 때 처음에 재귀함수를 이용해서 풀었더니 시간초과 오류가 발생하였다. 그래서 시간초과가 발생하지 않게 하기 위해 어떻게 해야하는지에 대해 생각을 하면서 문제를 풀어야한다. 배열을 사용해서 문제를 풀어 시간초과 문제를 해결했다. class Solution { public int solution(int n) { int[] answer = new int[n + 1]; answer[0..
2023.01.11 -
프로그래머스 숫자의 표현 java
문제 https://school.programmers.co.kr/learn/courses/30/lessons/12924 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 숫자 n이 주어졌을 때 연속된 자연수의 합이 n이 되는 횟수를 구하는 문제이다. 경우의 수 1. n 자기 자신을 1번 더하는 경우 2. 연속된 자연수의 합이 n이 되는 경우 나의 코드 class Solution { public int solution(int n) { // 1. 자기 자신일 경우 횟수 1번 int answer = 1; // 자기 자신이 아닐 경우는 n의 절반의 이상의 수를 순서..
2023.01.11 -
프로그래머스 이진 변환 반복하기 java
문제 https://school.programmers.co.kr/learn/courses/30/lessons/70129 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 0과 1로 이루어진 문자열이 있는데 x의 모든 0을 제거한 후 x의 길이를 다시 2진법으로 표현한 문자열을 바꾸는 과정을 x가 1이 될때까지 반복했을 때 이진 변환 횟수, 제거된 0의 개수를 구해야 한다. 3줄 요약 1. 이진수의 x의 0을 제거 2. 남은 x의 길이를 다시 이진수 x로 변환 3. 1, 2 과정을 x가 1이 될때까지 반복 나의 java 풀이 class Solution { pu..
2023.01.11 -
docker와 vm 비교
저번에 캡스톤 프로젝트를 진행하면서 db 환경이 동일하지 않아 pr을 올릴때마다 db 아이디와 비밀번호가 계속 변경되는 문제점이 있었습니다. 이번에 팀프로젝트를 진행하면서 이러한 문제를 해결할 방법을 알아보던 중 docker에 대해서 알게 되어서 docker에 대해서 정리하겠습니다. 또한 docker와 vm을 비교가 된다는 사실을 알게 되어 docker와 vm에 대해서 비교를 하는 방식으로 진행하겠습니다. docker란? docker는 리눅스의 응용 프로그램들을 프로세스 격리 기술들을 사용해 컨테이너로 실행하고 관리하는 오픈 소스 프로젝트입니다. vm(virtual machine)이란? 컴퓨터 환경을 소프트웨어로 구현한 것, 즉 컴퓨터 시스템을 가상현실화하는 소프트웨어라고 하며, 가상머신상에서 운영체제나..
2023.01.10