[함수] 1 일 1 함수 : 그룹 내 순위를 매기는 함수(RANK, DENSE_RANK, ROW_NUMBER)
·
oracle
그룹 내 순위를 매기는 함수에는 RANK, DENSE_RANK, ROW_NUMBER가 있다. 각각 특징을 비교하여 어떤 경우에 쓰이는 지 알아보았다. ROW_NUMBER()SELECT     employee_id,     salary,     ROW_NUMBER() OVER (PARTITION BY department_id ORDER BY salary DESC) AS row_numFROM     employees; 이 예시에서는 각 부서별로 사원을 연봉에 따라 순위를 매기는 경우이다. employees 테이블에서 각 사원의 연봉을 내림차순으로 순위를 매긴다. PARTITION BY 절은 부서별로 분할하여 순위를 매기고, ORDER BY 절은 연봉을 기준으로 순위를 부여한다. RANK()SELECT    ..
[프로그래머스][java] lv 0 세균 증식
·
java
내 풀이Math.pow로 할 수 있을 거 같았는데 생각이 안나서 저렇게 했다n * (int)Math.pow(2, t)찾아보니 이렇게 하면 된다고 함..다른사람 풀이비트연산자를 이용한거라함..비트연산으로 한칸씩 밀면 2를 곱한거랑 같은거니까 t만큼 밀어주면 정답이래저런것도있구나이것도 깔끔하다
[프로그래머스][java] lv 1 최소직사각형
·
java
1. 문제 설명문제 설명명함 지갑을 만드는 회사에서 지갑의 크기를 정하려고 합니다. 다양한 모양과 크기의 명함들을 모두 수납할 수 있으면서, 작아서 들고 다니기 편한 지갑을 만들어야 합니다. 이러한 요건을 만족하는 지갑을 만들기 위해 디자인팀은 모든 명함의 가로 길이와 세로 길이를 조사했습니다.아래 표는 4가지 명함의 가로 길이와 세로 길이를 나타냅니다.명함 번호가로 길이세로 길이16050230703603048040가장 긴 가로 길이와 세로 길이가 각각 80, 70이기 때문에 80(가로) x 70(세로) 크기의 지갑을 만들면 모든 명함들을 수납할 수 있습니다. 하지만 2번 명함을 가로로 눕혀 수납한다면 80(가로) x 50(세로) 크기의 지갑으로 모든 명함들을 수납할 수 있습니다. 이때의 지갑 크기는 4..
[프로그래머스][java] lv1 이상한 문자 만들기
·
java
1. 문제 설명2. 나의 풀이class Solution { public String solution(String s) { StringBuilder sb = new StringBuilder(); int index = 0; for(int i = 0; i StringBuilder를 이용하여 매번 String 객체를 생성하지 않도록 함s 문자열을 charAt 으로 한글자씩 떼어 공백일때는 sb에 공백을 붙이고, 인덱스를 초기화 한 후 다음 반복으로 넘어가도록공백이 아니면 짝수일때 대문자, 홀수일때 소문자개선할 점 =>1. Character에도 toUpper가 있음 Character.toString(s.charAt(i)).toUpperCase() => ..
[프로그래머스][java] lv 0 중복된 문자 제거
·
java
1. 문제 설명2. 나의 풀이import java.util.ArrayList;import java.util.List;class Solution { public String solution(String my_string) { String answer = ""; List list = new ArrayList(); for(int i = 0; i  만능 list.. 3. 다른 사람의 풀이풀이 1 . Set 을 이용한 풀이import java.util.*;class Solution { public String solution(String my_string) { String[] answer = my_string.split(""); Set se..