분류 전체보기 (283) 썸네일형 리스트형 프로그래머스(JAVA) - Hash (완주하지 못한 선수) 문제정리참여한 선수들의 이름이 담긴 배열 participant, 완주한 선수들의 이름이 담긴 배열 completion완주하지 못한 선수이름은 return이름은 알파벳 소문자로 이루어져 있으며, 참가자 중에는 동명이인 존재 이 문제의 포인트 중 하나는 completion의 길이는 participant의 길이보다 1 작다 라는 부분인 것 같다. 그러면 무조건 완주하지 못한 선수가 1명이라는 뜻이기에 그걸 처음에 잡아내지 못함처음 작성한 코드import java.util.Arrays;class Solution { public String solution(String[] participant, String[] completion) { Arrays.sort(participant); .. 프로그래머스(JAVA) - Hash (폰켓몬) 문제정리N마리의 폰켓몬 중 N/2마리를 가져가도 좋다최대한 많은 종류의 폰켓몬을 포함해서 N/2마리를 선택, N 마리 폰켓몬의 종류 번호가 담긴 배열 nums가 매개변수로 주어질 때, N/2마리의 폰켓몬을 선택하는 방법 중, 가장 많은 종류의 폰켓몬을 선택하는 방법을 찾아 종류의 개수의 최댓값 하나만 returnnums 길이는 항상 짝수 처음 작성한 코드import java.util.ArrayList;import java.util.List;class Solution { public int solution(int[] nums) { int answer = 0; List list = new ArrayList(); for(int i = 0; i 기존에 자주 사용했던.. Planify - JPA를 사용하여 데이터베이스와 직접 매핑 JPA(Java Persistence API)Java 객체와 DB 엔티티(테이블) 자체를 그대로 매핑해서 처리할 수 있는 접근 방식을 채택한 새로운 기술표준JPA의 접근 방식은 ORM(Object-Relational Mapping) 기술을 의미한다. 즉, 객체와 데이터베이스 간의 매핑 기술을 의미, Java 개발자가 좀 더 객체지향 관점에서 개발할 수 있게 하고, 개발을 용이하게 해주어서 DB와 Java간의 불일치를 해소해 준다.MyBatis와 다르게 SQL 문의 작성이 불필요하며 ORM 내부적으로 java 메소드에 적합한 SQL 문이 자동으로 생성이 되어 실행되게 된다. Java 개발자는 클래스만 만들어서 사용하고, ORM 프레임워크가 자동으로 관련된 SQL을 만들어 준다고 한다.그래서 찾아봤는데자동으.. 경고 해결 - Hibernate Dialect 설정 제거, spring.jpa.open-in-view 기본 활성화 경고 HHH90000025: PostgreSQLDialect does not need to be specified explicitly using 'hibernate.dialect' application.yml에서 hibernate 설정을 제거해서 해결Hibernate 6.x 이상에서는 PostgreSQL이 자동으로 감지되므로 설정이 불필요하다. spring.jpa.open-in-view is enabled by default. Therefore, database queries may be performed during view rendering. open-in-view 설정이 기본적으로 true로 되어있어서, View 렌더링 중에도 데이터베이스 쿼리가 실행될 수 있음 / yml에서 비활성화하면 View 렌더링.. 프로그래머스(JAVA) - level2(짝지어 제거하기) 문제정리문자열 S에서 같은 알파벳이 2개 붙어있는 짝을 찾고, 제거한 뒤 앞뒤로 문자열을 이어 붙인다.성공적으로 수행할 수 있으면 1, 아닐 경우 0처음 작성한 코드class Solution { public int solution(String s) { while (!s.equals("")) { String[] str = s.split(""); for (int i = 0; i 코드를 평소와 같이 익숙한 형태와 문법으로 해결하려고 했으나 시간초과..... 아무리 다르게 생각을 해도 다른 해결법이 생각이 나지않아 구글링해서 다른 사람들 코드 참고해봄..;;하긴 반복문이 삼중으로 있으니 시간이 오래 걸릴수밖에..반복문말고도 다른 해결책으로 생각을 바꿔야.. 프로그래머스(JAVA) - level2(피보나치 수) 문제정리피보나치 수는 1 이상의 n에 대하여 F(n) = F(n-1) + F(n-2) 가 적용되는 수2 이상의 n이 입력되었을 때, n번째 피보나치 수를 1234567으로 나눈 나머지를 리턴한 함수 이라는데 문제를 이해하는데 시간이 좀 걸림..;; 각각 2이상의 수에 나눠서 나머지를 구하라는 건지..작성한 코드class Solution { public int solution(int n) { int[] answer = new int[n + 1]; for (int i = 0; i 문제를 이해하고 나서는 해결하는 데에는 오래걸리지 않음!시간은+ 추가🧐피보나치 수열은 대표적인 동적 프로그래밍의 예라고 한다.동적 프로그래밍(DP)은 큰 문제를 작은 문제로 나누어 푸는 알고리즘 .. 프로그래머스(JAVA) - level2(이진 변환 반복하기) 문제정리0과 1로만 이루어진 문자열 ss의 모든 0을 제거, s의 길이를 2진법으로 표현한 문자열이진변환의 횟수와 변환 과정에서 제거된 모든 0의 개수를 배열에 담아 return처음 작성한 코드class Solution { public int[] solution(String s) { int[] answer = {}; String[] re = s.split(""); int count = 0; // 이진 변환의 횟수 int remove = 0; // 제거된 모든 0의 개수 String result = ""; // 이진 변환 결과 while(!result.equals("1")){ int length = 0; /.. 프로그래머스(JAVA) - level2(구명보트) 문제정리구명보트는 최대 2명씩 (그러면 한명도 탈 수 있음), 무게 제한은 100kg모든 사람을 구출하기 위해 필요한 구명보트 개수의 최솟값을 return처음 작성한 코드import java.util.Arrays;class Solution { public int solution(int[] people, int limit) { int answer = 0; Arrays.sort(people); int a = 0; int b = people.length - 1; while(a = sum){ answer++; b--; a++; }else{ .. 이전 1 2 3 4 5 ··· 36 다음