Intellij UTF 8 설정
intellij 2021. 5. 24. 12:43

아래와 같이 unmappable character for encoding x-windows-949 오류가 난다... 매번 이 오류를 마주 할 때마다 화가 난다 비슷한걸 매번 조회 하고 있는 나를 보며.. 아무튼 아래와 같이 오류가 나면 여러 곳을 확인해 봐야 한다. 설정의 File Encodings가 UTF-8로 설정 되어있는가? VM options에 UTF-8이 설정 되어 있는가.. 그런데 이게 매번 헷깔리는게 저 vmoptions 파일이 프로젝트와 연결된 것으로 잘 골라야 하는 것이다. 그래서 아래와 같이 Shift 2번을 누르면 나오는 Quick Bar에서 수정해 줘야 한다. 아래와 같이 UTF-8을 설정 해주고 재 실행 하면 잘 된다. 혹시 캐쉬가 남아 있어서 안될 수도 있다. 아래 invalid..

Sudoku Solver
Problem Solving 2021. 5. 23. 20:42

Sudoku Solver 문제 내용 수도쿠에 빈 칸을 모두 채우시오 접근 방법 full search를 제외하고 해결 방법은 없다. 가장 쉬운 방법은 모든칸에 모든 값을 대입하는 방법이다. row 9개 col 9개의 cell로 구성된 board가 수도쿠 임으로 모든 cell은 81칸으로 이루어져 있다. 각 cell은 1부터 9까지 9개의 값을 갖을 수 있다. 이런칸이 81칸임으로 $$ 9^{81} $$ 이 된다. 이것을 약간 최적화 해보자면 다음과 같이 바꿀수 있다. - 앞서 선택된 값을 선택하지 않는다. 예를 들자면 9개의 네모칸이 있다고 생각해 보겠다. 이중 첫번째 네모칸을 1로 선택한다면 뒤에있는 8개의 칸은 2에서 9사이 선택권을 갖는다. 이런방식으로 첫번째 칸은 9가지 선택권을 두번째 칸은 8가지..

Minimum Window Substring
Problem Solving 2021. 5. 22. 13:22

Minimum Window Substring 문제 내용 주어진 t라고 하는 문자열이 s라고 하는 문자열에 완전히 포함되는 경우 중에 가장 작은 사이즈의 부분 문자열을 구하시오 접근 방법 처음에 해당 문제를 접근할때는 1Point에 Index를 두개 두어서 접근 하고자 했다. 상위와 같은 방법으로 count가 모두 0일때 Index의 min과 max를 구해서 가장 작은 문자열을 뺄려고 했는데, 이 방법은 특정 문자가 중복해서 나올경우 예를 들자면 상위 그림에서 A가 2번 나오는 것을 check하고자 한다면 Index를 Array로 관리 해야한다. 개발은 가능하겠지만 개발 복잡도나 Time Complexity에 맞지 않는 것 같다. 그래서 Two Point를 사용하는 방법으로 다시 고려 하였다. left와 ..

Binary Tree Maximum Path Sum
Problem Solving 2021. 5. 21. 23:53

Binary Tree Maximum Path Sum 문제 내용 왼쪽에서 오른쪽으로 한개의 라인으로 이었을때 가장 큰 값은? 접근 방법 문제를 이해하기 쉽지 않다. 예제의 Depth가 최대 1 depth로 표현 되어있기 때문이다. Testcase를 돌려보면 몇개의 Depth가 되든 상관없이 왼쪽의 노드에서 오른쪽 노드까지의 Sum이 최대가 되면 된다. 예를 들자면 다음과 같다. 즉 양수이기만 한다면 left child와 right child 중 가장 큰값을 기준으로 sum을 하면 된다. 이런 그림인데 이 그림으로 인해서 혼돈이 발생 할 수도 있는데, 만약 다음과 같은 경우라면 $$ 3 $$ 이 답이 된다. 즉 어떤 Path든 상관없이 왼쪽 오른쪽의 0이상의 Max 값을 더해서 최고가 되는 값을 구하면 된다..

Gradle's dependency cache may be corrupt
Web 2021. 5. 21. 10:59

Spring 프로젝트 진행 중에 다음과 같은 오류가 발생 하였다. Unable to find method 'org.gradle.api.tasks.SourceSet.getCompileConfigurationName()Ljava/lang/String;'. Possible causes for this unexpected error include: Gradle's dependency cache may be corrupt (this sometimes occurs after a network connection timeout.) Re-download dependencies and sync project (requires network) The state of a Gradle build process (daemon)..

Pycharm Anaconda Setup
python 2021. 5. 19. 23:44

Pycharm에 Anacond 환경을 설정하기 위해서는 아래와 같이 Interpreter 설정을 잡아 줘야 한다. 자신에게 맞는 OS 버전을 Down 받아서 install을 처리한다. https://www.anaconda.com/products/individual#windows Install이 완료된 후 Project Interpreter를 이용해서 바퀴모양 설정을 눌러서 Add를 선택한 후 Conda Environment를 설정해 주면된다. 여기서 Location과 Version은 앞서 Anaconda를 install한 위치를 지정해 주면 된다. 선택된 프로젝트에 Anaconda 프로젝트가 설정되는 것을 확인 할 수 있다. 프로젝트 Terminal에서 아래와 같이 정보가 나오면 잘 설정 된 것이다. A..

Word Break 2
Problem Solving 2021. 5. 19. 23:16

Word Break II 문제 내용 및 풀이 방법은 2020.09.29 - [Problem Solving] - 139. Word Break 와 동일하다. 다른 점이 있다면 word break 1번 문제는 Dictionary로 해당 문자를 만들 수 있는가? 이고 word break 2번 문제는 모든 경우의 수를 return 하는 것이 다르다. public List wordBreak(String s, List wordDict) { return dfs(s, wordDict, new HashMap()); } public ArrayList dfs(String s, List wordDict, HashMap dp) { ArrayList result = new ArrayList(); if (dp.containsKey(..

Reverse Nodes in k-Group
Problem Solving 2021. 5. 18. 00:25

Reverse Nodes in k-Group 문제 내용 주어진 Linked List를 주어진 상수 값으로 Reverse Node를 시키면서 Linked List를 유지 시켜라. 예를 들자면 [1,2,3,4,5] 가 주어졌을 때 2라고 하면 2개씩 Linked List를 Reverse 처리한다. [2,1,4,3,5] 3이면 3개씩 [3,2,1,4,5] 접근 방법 우선 문제를 2가지로 나누어서 생각할 필요가 있다. 주어진 Linked List 범위를 Reverse 시킨다. Reverse된 Linked List를 Group간에 연결을 시켜야 한다. 우선 Linked List를 Reverse 시키는 방법 부터 고민을 해야한다. 위 그림을 예로 들어보자 [1,2,3,4,5] 라고하는 Linked List가 주어지..

apt-cyg cygwin에 install
잡동사니 2021. 5. 11. 17:52

cygwin을 모두 인스톨한 상태에서 wget을 install 해준다. cygwin을 실행 한 후 다음 command를 실행해 준다. wget rawgit.com/transcode-open/apt-cyg/master/apt-cyg 해당 명령어는 github.com/transcode-open/apt-cyg 을 참조 하면 된다. apt-cyg를 실행 가능하도록 변경해 준다. chmod +x apt-cyg 이제 apt-cyg는 ./apt-cyg 명령어를 통해서 작동이 가능한 상태가 된다. 이제 global 접근 가능 하도록 /bin 디렉토리 밑으로 옮겨 주면 된다. mv apt-cyb /bin @DESKTOP-EQGMFFE ~ $ mv apt-cyg /bin @DESKTOP-EQGMFFE ~ $ apt-cyg..