일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 테스크
- 구조체
- 이스케이핑
- Self
- 백준
- Subject
- ios
- 프로그래머스
- 리스트뷰
- 옵셔널
- 알고리즘
- 해시
- weak
- 자바
- RxSwift
- observable
- 클로저
- 프래그먼트
- 스위프트
- 안드로이드
- 연산자
- View
- 서브스크립트
- 차이
- concurrency
- async
- 풀이
- 생명주기
- rx
- Swift
- Today
- Total
목록전체 글 (177)
study record
수식 최대화 한 번에 로직을 떠올리기 쉽지 않은 어려운 문제,,,, 일단 주어진 식의 정수값과 연산자를 구분지어 ArrayList에 저장한다. 만들어낼 수 있는 연산자 조합을 char[] 배열로 만들어내고, 조합이 만들어질 때마다 그 연산 값을 구해 answer에 넣고 Math.max()로 최댓값을 유지시킨다. cal()함수로 연산자에 따른 연산을 진행시키는데, 이때 두 값을 넘겨줄 때, ArrayList를 이용해 cNums.remove(j) 두 번을 시켜서 연산자의 좌우 값을 넘겨준다. 계산값을 그 자리에 다시 add(j,res)시킨다. cOps에서도 계산한 연산자를 remove(j)시키고, 전체적으로 ArrayList의 크기가 하나 줄었으므로 j—를 해준다. 나중에 다시 한 번 풀어보자..! impo..
기능개발 다양한 풀이 방법이 있는 문제지만 큐를 활용해보기로 했다. Math.ceil()이라는 메소드로 올림을 할 수 있다. 각 남은 날을 큐에 넣는다. 먼저 첫번째 날을 뽑아내고 큐가 비지 않을 때까지 다음꺼를 뽑고 비교해서 앞의 날이 더 크면 count를 ++한다. 뒤 값이 더 클 경우 그냥 count를 arraylist에 추가하고 cont =1로 초기화해준다. 앞 값을 현재 값으로 맞춰야 한다. 그렇게 정리된 arraylist값을 answer[]에 넣어준다. 다양한 방법이 있으니 다시 풀어 볼 것! import java.util.ArrayList; import java.util.LinkedList; import java.util.Queue; public class PerfomanceDevelop {..
더 맵게 PriorityQueue 를 사용하는 문제 heap은 정렬하지 않아도 peek()이나 poll()하면 가장 작은 값이 나온다. 힙은 우선순위 큐를 위해 만들어진 자료구조로, 부모노드 키 값이 자식 노드 키 값보다 항상 크거나 작다. import java.util.PriorityQueue; public class Spicer { public int solution(int[] scoville, int K) { int answer = 0; PriorityQueue heap = new PriorityQueue(); for (int i = 0; i K) { if(heap.siz..
완주하지못한 선수 HashMap을 이용한 문제 풀이 hash.put(key, value), hash.get(key)를 이용한 문제풀이를 진행했다. import java.util.HashMap; public class Hash { public static void main(String[] args) { String[] participant = {"marina", "josipa", "nikola", "vinko", "filipa"}; String[] completion = {"josipa", "filipa", "marina", "nikola"}; System.out.println(solution(participant, completion)); } public static String solution(Stri..