목록전체 글 (240)
요르딩딩
1. Body에 데이터를 담을것이기 때문에 Post형식이여야한다. 2. @RequestBody HashMap map 선언
이번문제는 문자열에 관련된 문제이다. 처음에는 쉽게 접근했으나, 조건들이 여러개 있거 확인하는데, 시간이 걸렸던것 같다. 여기서는 몇가지 포인트들만 구현할 줄 알면 된다. 포인트는 아래 3가지가 있다. 특수한 두개의 문자를 중복되지 않는 한개의 문자로 대체해서 사용한다. 시간간의 차이는 모두 분으로 만들어 계산한다. : 06:30 ~ 07:10 -> 430분 - 390분 = 40분 일정한 숫자를 반복해서 붙일때 : 나머지(%)를 사용 5/4 = 1...(1) = (인덱스 % 반복길이) 추가로 런타임에러가 났었는데, 아래 2가지를 수정하여 해결했다. 시간차이, 제목을 저장할 map 대신 static 변수 사용으로 대체 if문 두번 질의하던것을 OR을 적용하여 하나의 if문으로 수행 import java.u..
이런문제는.. 진짜 은근 너무 어렵게 느껴지는것같다. 1/3의 몫은 0, 2/3의 몫은 0 이므로 몫이 0이 아닌경우만 반복하면 된다. 몫이 0이 될때까지 남으면 몫도 나머지가 되는 방법을 생각한다면 쉽다. 하지만 생각하기가 쉽지 않았다... 이런 쉬운듯한 어려운문제를 풀고나면 기분이 찜찜하다.. class Solution { public String solution(int n) { String answer = ""; while (n!=0) { n = n / 3; // 몫 : 3보다 작은 수로 나누면 몫이 0이다 int mod = n % 3; // 나머지 if (mod == 0) { n = n-1; answer = "4" +answer; } else { answer = mod +answer; } } re..
이번문제는 검색해서 찾아보기 전까지는 해결방법을 적용하기가 어려웠다고 생각한다. 찾아보니 comparator와 정규식을 사용하면 보다 편하게 풀 수 잇었다는것을 배울 수 있었다. 이번기회에 comparator와 정규식을 익혀야겠다 import java.util.*; class Solution { public String[] solution(String[] files) { String[] answer = {}; compartor c = new compartor(); Arrays.sort(files, c); return files; } } class compartor implements Comparator{ @Override public int compare(String o1, String o2) { Str..
class MapComparator implements Comparator { private final String key; public MapComparator(String key) { this.key = key; } @Override public int compare(HashMap first, HashMap second) { int firstValue = (int) (first.get(key)); int secondValue = (int) (second.get(key)); // 내림차순 정렬 if (firstValue > secondValue) { return -1; } else if (firstValue < secondValue) { return 1; } else { return 0; } } //사..
https://programmers.co.kr/learn/courses/30/lessons/92341 코딩테스트 연습 - 주차 요금 계산 [180, 5000, 10, 600] ["05:34 5961 IN", "06:00 0000 IN", "06:34 0000 OUT", "07:59 5961 OUT", "07:59 0148 IN", "18:59 0000 IN", "19:09 0148 OUT", "22:59 5961 IN", "23:00 5961 OUT"] [14600, 34400, 5000] programmers.co.kr 이번문제를 풀면서 다시한번 알아두면 좋은 기능들을 확인해볼 수 있었다. 1. map에 key기준 오름차순으로 정렬해주는 TreeMap 2. map에 누적값을 넣을때 사용하면 좋은 map..
https://programmers.co.kr/learn/courses/30/lessons/62048 코딩테스트 연습 - 멀쩡한 사각형 가로 길이가 Wcm, 세로 길이가 Hcm인 직사각형 종이가 있습니다. 종이에는 가로, 세로 방향과 평행하게 격자 형태로 선이 그어져 있으며, 모든 격자칸은 1cm x 1cm 크기입니다. 이 종이를 격자 선을 programmers.co.kr 이번문제는 구현하기는 쉬우나 구현을 위한 규칙을 찾기가 너무 어려운 문제인거 같다. 이게 정령 레벨2의 문제란 말인가... 최대한 규칙을 찾으려고 2차원 배열로 각각의 경우를 다 적어봤으나 찾을 수 없어, 검색을 통하여 풀이를 확인 한 뒤 구현을 하였다. 규칙 : 가로 * 세로 - (가로 + 세로 - 최대공약수) 이번문제를 통해 최대공..