반응형

전체 글 314

오라클 ora-01481: 숫자 형식 모델이 부적합합니다.

해당 오라클 오류는 데이터 타입을 맞춰주지 않아서 생기는 오류입니다. TO_CHAR 함수로 날짜 형식을 변경하려고 할 때 주로 발생하는 오류인데요. 아래 예시로 자세히 살펴보겠습니다. TO_CHAR('20220911', 'YYYYMMDD' // 오류 발생 TO_CHAR(TO_DATE('20220911'), 'YYYYMMDD'), 'YYYYMMDD') // 오류 해결 SELECT TO_CHAR(TO_DATE('20220911'), 'YYYYMMDD'), 'YYYYMMDD') AS TODAY_ FROM DUAL; 테이블 내의 date 컬럼을 넘겨주면 오류가 발생하지 않지만, 다른 형식의 컬럼을 넘겨주면 위와 같은 오류가 발생합니다. 이러한 오류는 TO_CHAR 함수 내에 TO_DATE 함수를 넣어서 쉽게 해..

[백준]JAVA - 2156번: 포도주 시식

https://www.acmicpc.net/problem/2156 2156번: 포도주 시식 효주는 포도주 시식회에 갔다. 그 곳에 갔더니, 테이블 위에 다양한 포도주가 들어있는 포도주 잔이 일렬로 놓여 있었다. 효주는 포도주 시식을 하려고 하는데, 여기에는 다음과 같은 두 가지 규 www.acmicpc.net 풀이 동적 계획법 (dp) = 다이나믹 프로그래밍으로 접근하면 되는 문제이다. dp 관련 알고리즘은 해당 문제가 제시하는 조건에 맞는 점화식만 찾으면 쉽게 해결할 수 있다. 찾기가 어려울뿐... 1. 포도주 잔을 선택하면 무조건 다 마신 후에 제자리에 놓아야 한다. 2. 인접한 포도주를 3잔 연속으로 마실 수 없다. 위 조건에 맞는 점화식을 발견하려면 최소 4번째 포도주까지 진행해봐야한다. 우선 포..

[백준]JAVA - 10546번: 배부른 마라토너

https://www.acmicpc.net/problem/10546 10546번: 배부른 마라토너 마라토너라면 국적과 나이를 불문하고 누구나 참가하고 싶어하는 백준 마라톤 대회가 열린다. 42.195km를 달리는 이 마라톤은 모두가 참가하고 싶어했던 만큼 매년 모두가 완주해왔다. 단, 한 명 www.acmicpc.net 풀이 Map을 이용해서 풀었더니 처음엔 출력 초과가 발생했다. 이유는 동명이인이였다. 동명이인 문제를 해결하기 위해서 참가 선수 이름을 입력해줄 때 Map에 이미 들어있는 이름이라면 value 값을 1 추가해줬다. for (int i=0; i

[프로그래머스]JAVA - Level2. 타겟 넘버

https://school.programmers.co.kr/learn/courses/30/lessons/43165 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 주어진 숫자들로 덧셈과 뺄셈만을 이용해서 목표값을 만드는 문제이다. 모든 경우의 수를 거쳐야하므로 깊이 우선 탐색 (dfs)가 바로 생각이 났다. dfs 함수를 생성하고 마지막 노드까지 탐색했을 때 목표값과 일치한다면 answer++를 해주는 방식으로 코드를 설계했다. 여기서 중요한 건 목표값을 도달했을 때 answer++를 해주는 것이 아닌 마지막 노드까지 탐색을 완료해야한다는 점이다. 깊..

[프로그래머스]JAVA - Level1. 폰켓몬

https://school.programmers.co.kr/learn/courses/30/lessons/1845 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 홍 박사님의 총 폰켓몬의 절반을 최대한 다양한 폰켓몬으로 선택하는 문제이다. 중복없이 선택을 해야하기 때문에 바로 HashSet이 떠올랐다. HashSet을 이용하면 중복은 자동으로 제거가 되기 때문에 문제가 매우 간단해진다. 우선 총 폰켓몬을 전부 HashSet에 넣어서 중복을 제거한다. 이후에 HashSet의 사이즈가 총 폰켓몬의 절반을 넘으면 총 폰켓몬의 절반을 answer에 넣어주고, ..

[프로그래머스]JAVA - Level1. 소수 만들기

https://school.programmers.co.kr/learn/courses/30/lessons/12977 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 배열 nums에서 임의의 숫자 3개를 선택하여 해당 수의 합이 소수가 되는 경우의 수를 구하는 문제이다. 소수란 1과 자기 자신 외의 약수를 가지지 않는 1보다 큰 자연수이다. 우선 배열에서 숫자를 가져올 때 3중 for문을 쓰는 게 생각났다. 하지만 너무 비효율적이라고 생각해서 고민해봤는데 도저히 답이 안나왔고, 구글링을 했을 때도 3중 for문을 써서 해결한 게 대부분이였다. for (i..

[Windows10] 작업 표시줄 시간에 초 단위 표시하는 방법

윈도우에서는 작업 표시줄 우측에 현재 시간이 표시됩니다. 기본 형식은 년-월-일로 시간은 오후/오전 시간:분으로 표시되는데요. 초단위를 표현하고 싶을 땐 어떻게 해야 할까요? 지금부터 작업 표시줄에 표시되는 시간 형식을 변경하는 방법에 대해서 알아보겠습니다. 1. 초 단위를 표시하기 위해서는 레지스트리 값을 변경해야합니다. 윈도우 + R키를 눌러서 [실행] 팝업 창에서 regedit를 입력한다. 2. 아래 경로로 들어간다. 컴퓨터\HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced 3. Advanced를 우클릭 후에 [새로 만들기] > [Dword(32비트) 값]을 선택한다. 4. 값의 이름을 ShowSecondsIn..

IT 정보/Windows 2022.09.05

[프로그래머스]JAVA - Level1. 신고 결과 받기

https://school.programmers.co.kr/learn/courses/30/lessons/92334 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 해당 문제는 왜 Level 1로 되어있는지 잘 모르겠다... 문제에 중복을 제거해야하는 특징이 있기 때문에 HashMap과 HashSet을 사용하면 좋을 것 같다고 생각했다. 이후에 신고자와 대상자를 나눠서 HashSet을 대상자 기준으로 배열을 만들어 해결했다. HashSet[대상자] 배열에 신고자를 입력해주면 자동으로 중복이 제거 되므로 중복 문제를 쉽게 해결할 수 있다. for (Str..

[Windows10] 넷플릭스 소리 키우는 방법

요즘 넷플릭스에 재밌는 드라마/영화가 너무 많아서 자주 보곤하는데요. 컴퓨터를 사용해서 넷플릭스를 볼 때 유난히 소리가 작아지는 걸 느낄 수 있을겁니다. 특히 노트북으로 봤을 때 소리를 100까지 키워도 잘 안들리는 경우가 있는데요. 오늘은 간단하게 넷플릭스 소리 키우는 방법에 대해서 알아보겠습니다. 넷플릭스 소리 키우는 방법 1. 오른쪽 하단에 스피커 모양 아이콘을 우클릭 후, 소리를 클릭한다. 2. [재생] 탭으로 들어가서 사용하고 있는 스피커 우클릭 후, 속성을 클릭한다. 3. [개선 기능] 탭으로 들어가서 라우드니스 이퀄라이제이션을 체크한다. 4. [고급] 탭에서 단독 모드에 두 가지 설정을 모두 체크한다.

IT 정보/Windows 2022.09.04

[프로그래머스]JAVA - Level1. 최소직사각형

https://school.programmers.co.kr/learn/courses/30/lessons/86491 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 명함을 옆으로 돌려서 넣을 수 있다는 가정이 있기 때문에 가로, 세로 값이 아닌 각 명함의 큰 값과 작은 값으로 나누는게 좋다. 1. 각 명함의 크기에 큰 값과 작은 값으로 구분한다. 2. 가로 (큰 값)을 비교하면서 가장 큰 값을 찾는다. 3. 세로 (작은 값)을 비교하면서 가장 큰 값을 찾는다. 4. 가로 (큰 값) 과 세로 (작은 값)을 곱해서 지갑의 크기를 구한다. class Solu..

반응형