728x90

코딩테스트 18

[프로그래머스] 최소직사각형 - 완전탐색, 자바

sizes의 길이는 1 이상 10,000 이하이고 가로,세로는 1 이상 1,000 이하인 자연수이다. 단순하게 긴 걸 가로 길이로, 짧은 걸 세로 길이로 둔다는 생각으로 접근했는데 보통 명함이나 문서 정리할때 긴쪽으로 가로로 두고 탁탁치면서 정리하는 느낌으로 생각하면 될 듯하다. class Solution { public int solution(int[][] sizes) { int maxWidth = 0,maxHeight = 0; for(int[] size : sizes){ if(size[0] > size[1]){ if(maxWidth < size[0]) maxWidth = size[0]; if(maxHeight < size[1]) maxHeight = size[1]; }else{ if(maxWidth ..

코딩테스트 2023.02.18

[프로그래머스] 조건에 맞는 도서와 저자 리스트 출력하기

간단한 JOIN 문제이다. JOIN문제는 차근차근 출력해보면서 푸는 걸 추천한다. 그리고 프로그래머스에서는 매번 DATE 타입의 포맷을 지정해주기 때문에 TO_CHAR로 변환하는 방법은 당연히 알고있어야한다. --오라클 SELECT A.BOOK_ID,B.AUTHOR_NAME, TO_CHAR(A.PUBLISHED_DATE,'YYYY-MM-DD') AS PUBLISHED_DATE FROM BOOK A, AUTHOR B WHERE A.AUTHOR_ID = B.AUTHOR_ID AND A.CATEGORY = '경제' ORDER BY A.PUBLISHED_DATE

[프로그래머스] 가격대 별 상품 개수 구하기

가격대별로 상품 개수를 구하는데 여기서 핵심은 n만원대를 어떻게 나눌 것인가이다. TRUNC(PRICE/10000,0)으로 몇 만원인지 구하고 다시 10,000을 곱하는 방법으로 풀어줬는데 CASE WHEN이나 SUBSTR을 사용하는 방법도 있으나 10만원 이하라는 보장이 없기 때문에 아래와 같이 풀어주는 것이 제일 정확한 방법이지 않을까싶다. --오라클 코드 SELECT TRUNC(PRICE/10000,0)*10000 AS PRICE_GROUP, COUNT(PRODUCT_ID) AS PRODUCTS FROM PRODUCT GROUP BY TRUNC(PRICE/10000,0)*10000 ORDER BY PRICE_GROUP

[구현] 백준 2875번 대회 or 인턴 (java)

www.acmicpc.net/problem/2875 2875번: 대회 or 인턴 첫째 줄에 N, M, K가 순서대로 주어진다. (0 ≤ M ≤ 100, 0 ≤ N ≤ 100, 0 ≤ K ≤ M+N), www.acmicpc.net 인턴 팀 최댓값을 구한 후 조건에 충족할 때까지 팀 수를 줄이는 방식입니다. import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner scan = new Scanner(System.in); int n = scan.nextInt(); int m = scan.nextInt(); int k = scan.nextInt(); int team = n/2; while(true) {..

코딩테스트 2021.02.04

[String] 백준 10808번 알파벳 개수 (java)

www.acmicpc.net/problem/10808 10808번: 알파벳 개수 단어에 포함되어 있는 a의 개수, b의 개수, …, z의 개수를 공백으로 구분해서 출력한다. www.acmicpc.net 아스키코드만 잘 활용하면 쉬운 문제입니다. import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner scan = new Scanner(System.in); String s = scan.nextLine(); int[] n = new int[26]; for(int i = 0;i

코딩테스트 2021.01.31

[dp] 백준 11726번 2×n 타일링 (java)

https://www.acmicpc.net/problem/11726 11726번: 2×n 타일링 2×n 크기의 직사각형을 1×2, 2×1 타일로 채우는 방법의 수를 구하는 프로그램을 작성하시오. 아래 그림은 2×5 크기의 직사각형을 채운 한 가지 방법의 예이다. www.acmicpc.net dp이용해서 풀었습니다. dp 구할 때 10007로 나눠주시는 것만 유의하면 될 것 같습니다. import java.util.Scanner; public class p11726 { static int[] dp; public static void main(String[] args) { Scanner scan = new Scanner(System.in); int n = scan.nextInt(); dp = new int[..

코딩테스트/dp 2021.01.31
728x90
반응형