일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- java 내부 클래스
- java Collections.sort()
- 순열 재귀
- 자바 재귀 조합
- parseInt()
- char to str
- 서로소
- Java
- jquery dom 계층 선택자
- 순열코드
- 후위표기
- 자바입출력
- 알고리즘
- inner class
- 자바
- 재귀함수
- 자바스크립트 이벤트처리
- 재귀
- 자바스크립트 이벤트중지
- 자바 순열 코드
- 알고리즘 그래프
- 조합 재귀
- 상속
- java lambda
- str to char array
- 자바 조합 재귀
- jquery 이벤트 처리
- jquery 필터선택자
- Interface
- jquery 속성선택자
- Today
- Total
목록전체 글 (278)
유블로그
[프로그래머스] level2 문자열 압축 소요시간 : 42분 map 으로 삽질하다가 오래 걸린 문제.. ㅋ 절대 40분씩이나 걸릴 만한 문제는 아닌 듯 자르는 단위를 1부터 단어길이의 반까지 모두 시도해본다. 단어 길이의 반 초과 부터는 어차피 압축필요없이 문자열길이와 압축길이가 같으므로 시도하지 않는다. 자르는 단위대로 cur 과 next를 갱신하는데, cur과 next가 같으면 계속 count를 올려서 같은 문자열이 몇 번 나왔는지 체크한다. cur과 next가 다르면 StringBuilder에 append 후 cur에 next를 담아 비교대상을 바꿔주고 , count = 1로 초기화한다. 이걸 문자열 끝까지 확인하여 StringBuilder 길이로 MIN 을 갱신한다. class Solution {..
깃에서 원본 fork 후 소스트리에서 fork 한 레포지토리 clone 한 상태에서 하면 편하다. 원격저장소 추가로 원본(upstream) 추가해놓는다. fork 레포지토리와 upstream 레포지토리를 동기화시키면서 branch 그래프를 깔끔하게 만들기 위해선 rebase 가 필수다. 하는 방법 1. fork 레포지에서 develop에서 브랜치 feature/login 딴다. 2. feature/login에서 수정할 거 하고 커밋한다. 3. upstream 동기화를 위해 fetch 한다. 4. 페치 후 변경사항 있었다면 upstream/develop에 내 develop 브랜치를 rebase 한다. -> (나의 develop 브랜치를 최신 상태로 만드는 것과 같다!) 5. feature/login 을 o..
[프로그래머스] level 2 카카오 프렌즈 컬러링북 소요시간 : 18분 그냥 dfs로 blob 구하는 문제. 매우 쉬웠음 방문하지 않았고 0이 아닌 값을 찾으면 dfs 실행해서 주변 연결된 것들 다 찾고 cnt 와 MAX 값 비교해서 갱신한다. class Solution { public int[] solution(int m, int n, int[][] picture) { M = m; N = n; int numberOfArea = 0; visited = new boolean[m][n]; for (int i = 0; i < m; i++) { for (int j = 0; j < n; j++) { if(!visited[i][j] && picture[i][j] != 0) { numberOfArea++; cnt ..
프로그래머스 level2 삼각달팽이 소요시간 : 18분 방향이 3가지가 있어서 1 - i만 증가 2 - j만 증가 3 - i 감소 j 감소 이 3가지 방향을 차례대로 반복했다. i 나 j 인덱스가 벗어나거나 이미 값이 들어간 곳에 도착하면 방향을 바꿔주면 된다. 1 + 2 + ... + n = n(n+1)/2 개만큼 돌면 break 한다. 풀고나서 다른 사람 풀이를 보니 i % 3 == 0 이면 i++, i % 3 == 1이면 j++, i % 3 == 2 이면 i--, j-- 이렇게 for문 두개 안에서 간단하게 풀이를 했는데 진짜 괜찮은 방법인 것 같다. class Solution { public int[] solution(int n) { int[][] arr = new int[n][]; for (in..
$ del node_modules package-lock.json 지우고 $ npm cache clean -f 하고 다시 $ npm i 한 다음 $ npm run serve 하면 잘 됨
프로그래머스 level1 크레인 인형뽑기 게임 소요시간 : 8분 그냥 문제가 하라고 하는대로 짜면 되는 문제였다 문제에서 말하는 바구니를 list로 하고 list.get 으로 했는데 stack 으로 peek 해서 짜는 게 훨씬 편할 듯! import java.util.ArrayList; import java.util.List; class Solution { public int solution(int[][] board, int[] moves) { int N = board.length; int answer = 0; List list = new ArrayList(); for (int i = 0; i < moves.length; i++) { for (int i2 = 0; i2 < N; i2++) { if(boa..
프로그래머스 level2 스킬트리 소요시간 : 1시간 11분 어우 간단할 줄 알았는데 자꾸 막혀서,,,, 엄청 오래 걸렸다. skill 문자들이 나온 인덱스를 저장해놓고 순서대로 나왔다면 answer++ 했다. 내가 짜고 싶었던 방법은 저장하기 전에 아예 순서대로 나왔는지 체크하는 거였는데 그렇게 하려면 함수 하나 빼서 idx 관리해주면 되는 간단한 문젠데 왜 안된거지 이상하군 import java.util.Arrays; class Solution { public int solution(String skill, String[] skill_trees) { int answer = 0; int[] arr = new int[skill.length()]; for (int i = 0; i < skill_trees...
프로그래머스 level2 124의 나라의 숫자 너무 안 풀려서 답을 봤다..ㅠ 3진법으로 생각하다가 내가 놓친 부분은.. 3으로 나누어 떨어질 때 n-1 해줘야하는것... 3진법으로 3은 10 인데 124나라는 4 라서 자리수 하나를 빼줘야 맞다 사실 완벽히 이해하진 못했다 ㅎ 계속 생각해봐야 할 듯 String 이어붙이니까 시간초과나서 StringBuilder로 바꿨다. 코드 class Solution { public String solution(int n) { StringBuilder answer = new StringBuilder(); int r = 0; while(true) { if(n == 0) break; r = n % 3; if(n % 3 == 0) r = 4; answer.insert(0,..