전체 글 22

[프로그래머스] 대소문자 바꿔서 출력하기 - java

level 0 [문제]https://school.programmers.co.kr/learn/courses/30/lessons/181949 [첫번째 풀이]import java.util.*;public class Solution { public static void main(String[] args) { Scanner sc = new Scanner(System.in); String a = sc.next(); String result = ""; for(int i=0;i주로 정규식을 많이 사용하다보니, 알고리즘 문제에 전부 정규식을 사용하게 된다.정규식은 String에 대해서만 가능하기 때문에 변환해주어야 해서 이런 문제에서는 적절하지 않아 보인다. [두번..

IT/코딩테스트 2025.03.12

[프로그래머스] 문자열 다루기 기본 - java

level 1 [문제]https://school.programmers.co.kr/learn/courses/30/lessons/12918 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr [풀이]문자의 길이가 4 또는 6인 경우: s.length()==4 || s.length==6숫자로만 이루어져 있는지 체크: 정규식 사용 s.matches("[0-9]+")class Solution { public boolean solution(String s) { boolean answer = false; if((s.length()==4 || s.length()==6) && s.matches..

IT/코딩테스트 2025.03.11

[프로그래머스] 같은 숫자는 싫어 - java

Level 1 [문제]https://school.programmers.co.kr/learn/courses/30/lessons/12906 [첫번째 풀이]Stack 문제이기 때문에, Stack을 사용한 풀이연속되는 숫자를 제거하는 것이라 Stack의 peek와 값이 다르면 데이터를 pushimport java.util.*;public class Solution { public int[] solution(int []arr) { Stack stack = new Stack(); stack.push(arr[0]); for(int i=1;i Stack- LIFO (후입선출)peek()최상단에 있는 데이터 조회pop()최상단에 있는 데이터 제거 후 반환push(..

IT/코딩테스트 2025.03.11

[프로그래머스] 완주하지 못한 선수 - java

Level 1 [문제]https://school.programmers.co.kr/learn/courses/30/lessons/42576 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr  [첫번째 풀이] 완주하지 못한 선수는 항상 한명이기 때문에두 배열을 정렬하고 같은 순서에 다른 이름이 오면 완주하지 못한 참가자로 return 한다.completion의 배열 import java.util.*;class Solution { public String solution(String[] participant, String[] completion) { Arrays.sort(participant);..

IT/코딩테스트 2025.03.05

[ORACLE] DUMP 함수

ORACLE에는 데이터에 대한 데이터타입, 길이, 내부 표현식에 따른 데이터 정보를 반환해주는 함수가 있다. => DUMP 해당 데이터의 메타데이터 정보를 확인하고 싶을 때 사용하면 좋다. 예를 들자면, 아래 USE_YN 컬럼은 동일한 데이터로 보이지만 다른 데이터다. 이때 DUMP 함수를 사용하면 유용하다. SELECT DUMP(USE_YN) FROM TBL; SELECT DUMP('Y') FROM DUAL; SELECT DUMP('Y ') FROM DUAL; USE_YN 컬럼에 대한 DUMP 결과를 조회해보면 아래와 같이 출력된다. Y 값은 89, 공백은 32를 의미하며 2번째 row의 USE_YN 컬럼에는 문자 뒤에 공백이 포함된 것을 알 수 있다. Len은 해당 데이터의 길이, Typ=96 은 C..

IT/DB 2023.12.27

[Elasticsearch] 에러 masternotdiscoveredexception: null

[상황] elasticsearch 설치 후, kibana 실행 시 오류 발생 (버전 7.17.0) [오류로그] path: /_template/kibana_index_template*, params: {name=kibana_index_template*} org.elasticsearch.discovery.MasterNotDiscoveredException: null at org.elasticsearch.action.support.master.TransportMasterNodeAction$AsyncSingleAction$2.onTimeout(TransportMasterNodeAction.java:297) [elasticsearch-7.17.0.jar:7.17.0] at org.elasticsearch.clus..

IT/기타 2022.09.14

[PostgreSQL] fixing permissions on existing directory /data ... initdb : colud not change permissions of directory "/data" : Opertaion not permitted

[상황] initDB 실행 시 오류 발생 DB : Postgresql DB Version 10 실행 커맨드 : ./bin/initdb -E utf-8 -D /data [오류 메시지] The files belonging to this database system will be owned by user "postgres". This user must also own the server process. The database cluster will be initialized with locale "en_US.UTF-8". The default text search configuration will be set to "english". Data page checksums are disabled. fixing p..

IT/DB 2022.04.04

[Mysql] 에러 Timeout exceeded in regular expression match.

[상황] Mysql 정규식 포함 쿼리 실행 시 오류 발생 [에러로그] Cause: java.sql.SQLException: Timeout exceeded in regular expression match. uncategorized SQLException for SQL []; SQL state [HY000]; error code [3699]; Timeout exceeded in regular expression match.; nested exception is java.sql.SQLException: Timeout exceeded in regular expression match. [원인] 정규식에는 문제가 없었으나 정규식 실행 시간 제한으로 인한 오류 [해결방법] 아래 쿼리로 정규식 실행 시간 제한을 조..

IT/DB 2021.12.24

[Mysql] 에러 Could not create connection to database server. Attempted reconnect 3 times. Giving up.

[상황] 애플리케이션에서 jdbc로 Mysql DB에 연결하려고 했으나 연결 실패했다. 네트워크 설정에는 문제가 없었음. [오류로그] Could not create connection to database server. Attempted reconnect 3 times. Giving up. com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: Could not create connection to database server. Attempted reconnect 3 times. Giving up. [원인] 나의 경우에는 연결 시도한 접속 계정의 비밀번호 오류 및 네크워크 허용 설정 때문이었다. 서치해보니 다양한 원인으로 해당 오류로그..

IT/DB 2021.12.22

[ORACLE] 에러 ORA-01861: literal does not match format string

[상황] SELECT LAST_DAY(날짜컬럼) FROM 테이블; SELECT TO_DATE(날짜컬럼) FROM 테이블; 위의 두개의 쿼리 수행 시 ORA-01861: literal does not match format string 오류 발생 (날짜 컬럼의 데이터 타입은 VARCHAR) [원인] DATE FROMAT 설정 또는 TO_DATE 변환형식을 입력하지 않았기 때문. '날짜컬럼'에 TO_DATE 할 수 없는 오류 데이터가 들어있을 때도 해당 오류가 출력될 수 있다. [해결방법] 첫번째 방법: NLS_DATE_FORMAT 을 변경한다. (DB 설정을 변경해도 괜찮은 경우.. 영향도 고려 필요) NLS_DATE_FORMAT 을 데이터에 따라 알맞게 수정한다. time 데이터도 있으면, NLS_TIM..

IT/DB 2021.12.09