Arrays.sort primitive 배열은 Comparator 안됨
요약 다음 3가지 기능에 따라 최종 시간을 구하기10초 전 이동: prev 명령어 10초 후 이동: next 명령어오프닝 건너뛰기: 현재 위치가 오프닝 구간이면 오프닝 마지막 시간대로 이동 1차에 틀린 이유, 기능 로직 순서prev, next 로직 이후에 오프닝 구간인지 검사했다. 하지만 시작 시간을 포함해서 오프닝 구간인지 검사했어야 했다. 문제(요구사항)를 꼼꼼히 읽어보고 기능의 서로 영향에 대해 고민해야 하는 걸 간접적으로 느낀 문제였다.3가지 기능의 순서에 깊이 생각안하고 각 기능 구현만 보고 구현함 각 기능이 독립적이다 아니다 뿐만 아니라 순서가 존재함package simulation;/* 테케가 아니었으면 틀렸을 문제 예제에서 틀려서 로직 순서의 이상확인 시뮬레이션 -> 로직 ..
프로젝트에서 동시성 이슈를 다루면서 Transactional Serializable이 안되는지 이해가 되지 않았다.isolation level이 가장 높기 때문에 당연히 동시성 이슈가 해결될 것이라 생각했다.하지만 비관적락에서만 동시성 이슈가 발생하지 않았다.그래서 구체적인 동작방식을 이해하고자 정리했다.프로젝트 동시성 이슈 발생상황예약 프로젝트이 특성 사 예약 요청 트래픽이 몰리는 상황을 테스트100개의 스레드로 동시에 예약 요청하여 데이터를 생성int threadCount = 100;ExecutorService executorService = Executors.newFixedThreadPool(32);List list = new ArrayList();for (int i = 1; i list1 = n..
mysql 에서도 I/O 연산을 줄이기 위한 Buffer Pool을 이용해 속도차이를 개선했다는 것이 신기하다.Redis 도 in-memory 기반의 cache 서버로 DB 부하를 줄일다는 것이 기억났다.기술발전에 따라 다양한 방법으로 속도 개선이 이루어지는 것을 알 수 있다. 또한 생각해볼 점은 Buffer Pool 이 메모리를 사용한다는 점이다. 만약 Buffer Pool보다 큰 작업을 수행하게 되면 이점없이 I/O 작업이 늘어나게 될 것이다. Buffer Pool 사이즈를 변경하거나, 쿼리문, index 또는 unique 작업 등을 수정해봐야 겠다는 생각이 들었다. MySQL크게 MySQL 엔진과 Storage 엔진으로 구분MySQL 엔진요청 쿼리에 대해 어떻게 실행할지 결정하는 역할InnoDB특..
Blocking vs Non-Blocking다른 주체가 작업할 자신의 제어권이 있는지 없는지로 볼 수 있다. Blocking다른 작업(함수) 호출 후 처리가 완료될 때까지 대기 후 자신의 작업 수행Non-Blocking다른 작업(함수) 호출 후 응답을 기다리지 않고 자신의 작업 수행필요에 따라 호출한 함수의 리턴값을 처리하는 콜백함수 존재Synchronous vs Asynchronous결과를 돌려주었을 때 순서와 결과에 관심이 있는지 아닌지로 판단 Synchronous, 동기작업을 동시에 수행하거나, 동시에 끝나거나, 끝나는 동시에 시작함을 의미작업 완료를 user space에서 판단하고 다음 작업을 언제 요청할지 결정하게 됩니다.모든 I/O 요청-응답 작업이 일련의 순서를 따릅니다. 즉, 작업의 순서가..
https://www.acmicpc.net/problem/17951문제넓은 시험 범위와 어려운 과제로 유명한 '운영체제로 보는 데이터베이스시스템 알고리즘' 수업은 시험지가 너무 많아 실내에서는 시험을 치를 수 없어서 야외에서 시험을 진행한다. 해당 수업의 수강생인 현수는 오랜 시간에 걸쳐 풀 수 있는 모든 문제를 풀었고 제출만을 남겨두고 있었다. 그러나 갑자기 불어오는 강풍에 현수의 시험지가 모두 날아가 버렸고, 날아간 시험지를 줍는 동안 남은 시간을 다 써버리고 말았다.시험지에 명시된 규칙 중에는 채점하는 조교의 편의를 위해 시험지를 반드시 순서대로 제출하라는 규칙이 있는데, 이 규칙 때문에 현수는 힘들게 치른 시험이 0점 처리될 위기에 빠지게 되었다!그러나, 마음씨 좋은 조교인 주찬이는 평소 수업에 ..
문제0부터 N까지의 정수 K개를 더해서 그 합이 N이 되는 경우의 수를 구하는 프로그램을 작성하시오.덧셈의 순서가 바뀐 경우는 다른 경우로 센다(1+2와 2+1은 서로 다른 경우). 또한 한 개의 수를 여러 번 쓸 수도 있다.입력첫째 줄에 두 정수 N(1 ≤ N ≤ 200), K(1 ≤ K ≤ 200)가 주어진다.출력첫째 줄에 답을 1,000,000,000으로 나눈 나머지를 출력한다. https://keepgoing0328.tistory.com/entry/DP%EB%B0%B1%EC%A4%80-2293-%EB%8F%99%EC%A0%84-1 [DP][백준 2293] 동전 1문제 https://www.acmicpc.net/problem/2293 문제n가지 종류의 동전이 있다. 각각의 동전이 나타내는 가치는 다..
문제 https://www.acmicpc.net/problem/2293 문제n가지 종류의 동전이 있다. 각각의 동전이 나타내는 가치는 다르다. 이 동전을 적당히 사용해서, 그 가치의 합이 k원이 되도록 하고 싶다. 그 경우의 수를 구하시오. 각각의 동전은 몇 개라도 사용할 수 있다.사용한 동전의 구성이 같은데, 순서만 다른 것은 같은 경우이다.입력첫째 줄에 n, k가 주어진다. (1 ≤ n ≤ 100, 1 ≤ k ≤ 10,000) 다음 n개의 줄에는 각각의 동전의 가치가 주어진다. 동전의 가치는 100,000보다 작거나 같은 자연수이다. 풀이 접근 과정1) 브루트포스 접근 O(K^n) 으로 시간 초과 2) 0-1냅색 접근 동전을 여러 개 사용할 수 있기에 불가 3) DP 점화식 구하기 3-1) DP[..
- Total
- Today
- Yesterday
- 카카오2020 공채
- DP
- 카카오 2020 공채
- java
- 짝지어 제거하기
- 백준
- 후보키
- 괄호 변환
- 정수 내림차순으로 배치하기
- Brainf**k 인터프리터
- 주사위 윷놀이
- programmers
- 문자열을 정수로 바꾸기
- 게리맨더링 2
- 단체사진 찍기
- 2019 카카오 공채
- 티스토리챌린지
- 가장 큰 정사각형 찾기
- 오블완
- 자바
- 124 나라의 숫자
- 3954
- 2018 카카오 공채
- 투포인터
- 17825
- 라면공장
- 큰 수 만들기
- 17779
- 프로그래머스
- 찾아라 프로그래밍 마에스터
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |