일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 | 29 |
30 | 31 |
- Spring Web MVC
- 성능테스트툴
- 자바
- 스택
- vm인스턴스생성
- GCP
- MySQL
- Spring MVC 구성요소
- 코드스테이츠
- OOP
- 투포인터알고리즘
- 싱글톤패턴
- 구간합구하기
- 클라우드에서 도커 실행하기
- 버블정렬
- 백준 11659
- 알고리즘
- 재귀와반복문
- 코드스테이츠 백엔드
- 인텔리제이
- java
- List.of
- 11659
- 백준
- String.valueOf()
- Array.asList
- 프로그래머스
- Spring MVC 동작원리
- 재귀함수
- 코딩테스트
- Today
- Total
목록글 전체 보기 (242)
순간을 기록으로

문제 풀이 철수가 받은 번호와 짝궁이 받은 번호를 찾는 문제이다. 입력으로 주어진 배열을 임시 배열에 복사를 한다. 그리고 원소별로 비교하면 철수와 짝궁의 번호를 알 수 있다. 코드 import java.util.ArrayList; import java.util.Arrays; import java.util.Scanner; public class Main { public ArrayList solution(int n, int[] arr) { ArrayList answer = new ArrayList(); int[] temp = arr.clone(); Arrays.sort(temp); // 정렬 for (int i=0; i

문제 풀이 배열의 연속된 원소와 관련이 있고 길이가 바뀌므로 투포인터 알고리즘이다. 코드 package 인프런.투포인터와슬라이딩윈도우.최대길이연속부분수열.방법1; import org.junit.jupiter.api.Assertions; import org.junit.jupiter.api.Test; public class Main { public int solution(int N, int k, int[] arr) { int answer=0; int count = 0; int start=0; for (int end = 0; end k) { // count가 k를 넘어가면 start 포인터가 0을 만날 때까지 오른쪽으로 이동시킨다. if (arr[start] == 0) count--; start++; } an..
문제 https://programmers.co.kr/learn/courses/30/lessons/1845 코딩테스트 연습 - 폰켓몬 당신은 폰켓몬을 잡기 위한 오랜 여행 끝에, 홍 박사님의 연구실에 도착했습니다. 홍 박사님은 당신에게 자신의 연구실에 있는 총 N 마리의 폰켓몬 중에서 N/2마리를 가져가도 좋다고 했습니다. programmers.co.kr 풀이 서로다른 가장 많은 종류의 폰켓몬을 반환하면 된다. 따라서 Set 자료구조를 이용해 중복은 무시하고 size() 메소드를 사용해서 서로다른 종류의 폰켓몬 갯수를 얻을 수 있다. 다만 처음 N/2마리라는 제한이 있으므로 만약 size 메소드에서 구한 값이 N/2보다 크면 N/2를 반환하고 그렇지 않으면 size 메소드에서 구한 값을 반환하면 된다. 코..
문제 https://programmers.co.kr/learn/courses/30/lessons/77884?language=java 코딩테스트 연습 - 약수의 개수와 덧셈 두 정수 left와 right가 매개변수로 주어집니다. left부터 right까지의 모든 수들 중에서, 약수의 개수가 짝수인 수는 더하고, 약수의 개수가 홀수인 수는 뺀 수를 return 하도록 solution 함수를 완성해주 programmers.co.kr 풀이 약수에 대한 개념이 필요한 문제다. N의 약수란 N을 나누어 떨어지게 하는 양의 정수를 말한다. 예를들어 4의 약수는 1, 2, 3, 4가 있다. 3의 약수는 1, 3이다. 어떤 수가 나누어 떨어지는지는 알려면 나머지 연산(%)을 사용하면 된다. 만약 나누어 떨어지는 수라면 ..

문제 주의할 점 그리디 알고리즘 문제이다. 그리디 알고리즘은 매 선택에서 현재 당장 최적인 답을 선택한다. 이 문제는 매 선택에서 회의실 끝나는 시간이 빠른 회의를 선택한다는 점에서 그리디 알고리즘이라고 할 수 있다. 시작 시간과 끝나는 시간을 묶어서 하나의 객체를 만들기 위해 Meeting 클래스를 선언하고 객체를 비교하기 위해 Comparable 인터페이스를 구현하였다. Comparable 인터페이스는 반드시 compare 메소드를 구현해야한다. 그리고 이 메소드를 구현함으로써 객체를 비교할 수 있다. 코드 package 인프런.그리디.회의실배정.방법1; import java.util.ArrayList; import java.util.Collections; import java.util.Scanner..
문제 https://programmers.co.kr/learn/courses/30/lessons/42862 코딩테스트 연습 - 체육복 점심시간에 도둑이 들어, 일부 학생이 체육복을 도난당했습니다. 다행히 여벌 체육복이 있는 학생이 이들에게 체육복을 빌려주려 합니다. 학생들의 번호는 체격 순으로 매겨져 있어, 바로 앞번 programmers.co.kr 주의할 점 체육복이 없다면 앞 뒤에 사람한테 체육복을 빌려야 한다. 하지만 예외적으로 1번인 사람은 앞의 사람이 없고 마지막 사람은 뒤에 사람이 없다. 그러므로 배열에 접근할 때 주의해야한다. 그렇지 않으면 에러가 발생한다. 원래는 boolean[] 형으로 체육복이 있는 사람과 없는 사람으로 분류했지만 int[]로 변경해서 -1이면 없는 상태, 0이면 있는 ..
문제 https://programmers.co.kr/learn/courses/30/lessons/12977# 코딩테스트 연습 - 소수 만들기 주어진 숫자 중 3개의 수를 더했을 때 소수가 되는 경우의 개수를 구하려고 합니다. 숫자들이 들어있는 배열 nums가 매개변수로 주어질 때, nums에 있는 숫자들 중 서로 다른 3개를 골라 더했을 때 programmers.co.kr 주의할 점 소수란. 1과 자기 자신으로만 나누어 질 수 있는 자연수이다. 예를들어 7은 1과 7로만 나눠질 수 있다.(= 1과 7로 나눴을 때 나머지가 0이다, 2, 3, 4, 5, 6으로는 나눠질 수 없다.) 그럼 자연수 N(N>=3)이라고 했을 때 N이 소수인지 판별하려면 2부터 N-1까지 모든 자연수를 확인해야 할까? 아니다. 절..
문제 https://programmers.co.kr/learn/courses/30/lessons/86051 코딩테스트 연습 - 없는 숫자 더하기 0부터 9까지의 숫자 중 일부가 들어있는 배열 numbers가 매개변수로 주어집니다. numbers에서 찾을 수 없는 0부터 9까지의 숫자를 모두 찾아 더한 수를 return 하도록 solution 함수를 완성해주세요. 제한 programmers.co.kr 주의할 점 없는 숫자들의 합을 구하는 문제. 없는 숫자를 직접 찾기 보다는 0~9까지의 합을 구한다음에 있는 배열에 있는 숫자들을 빼주면 없는 숫자들의 합이 나온다. 코드 package 프로그래머스.레벨1.없는숫자더하기; /* * 0~9중 없는 숫자를 더한 값을 리턴 = 0~9를 합을 구하고 있는 숫자를 모두..