일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 코틀린기초
- KotlinInAction
- kotlin
- 트랜잭션성질
- tomcat설정
- DynamicWebProject
- ObjectCalisthenics
- 레벨로그
- 트랜잭션속성
- Google Place Photo API
- 리버스프록시
- 무중단배포
- 우아한테크코스
- jsp프로젝트
- java
- S2139
- mysqld.sock
- 객체지향생활체조
- 백준
- 트랜잭션
- 코틀린뽀개기
- 스프링트랜잭션
- 테코톡
- 코틀린
- GithubOAuth
- subprocess에러
- 자바비동기
- 알고리즘
- 데이터베이스락
- servlet프로젝트
- Today
- Total
목록분류 전체보기 (80)
초이로그
Prim알고리즘을 사용하여 MST를 구성해서 풀어냈다. prim을 구현하고 계속 테스트 케이스의 답과 다르길래 문제를 다시 읽어보니 거리에 제곱을 해줘야하는데 계속 두점 사이의 거리로 풀어서 루트를 씌웠다... https://github.com/SuyeonChoi/Algorithms/blob/master/SW%20Expert%20Academy/Java/%EA%B7%B8%EB%9E%98%ED%94%84/p1251.java

애증의 문제다... 문제만 보면 내가 전혀 못풀리 없어 보여서(??) 이 악물고 풀어봤지만 항상 시간 초과가 떴었다. 이 문제에서 시간초과를 줄이기 위해서는 순차탐색을 하며 1. i번째가 사이클인지 판별할때, 발견된 사이클은 다시 방문하지 않는다.(i를 포함하지 않는 사이클이라도) 2. 이미 방문한(하지만 사이클은 아닌) 경우도 방문하지 않는다. 두개로 시간을 줄여나가야하는데 BFS에만 매달렸던 나는 도저히 1번을 구현할 수가 없었다... 결국 bfs코드를 쫙 지워버리고 dfs로 풀었더니 구현과정에서 start와 next를 체크하는게 다소 헷갈렸지만 한번에 맞을 수 있었다.. 빠르게 정답에 맞는 솔루션을 선택하는 연습도 필요한것 같다 https://github.com/SuyeonChoi/Algorithm..
"최단경로"라는 말을 보자마자 다익스트라, MST 등만 생각하다가 한시간째 못풀고 결국 DFS로 푼다는 힌트를 얻어서 풀어냈다... N 사이즈가 작긴 하지만 12이하이기 때문에 백트래킹도 이용했다. 역시 알고리즘은 한발짝 물러나서 생각하는게 필요하다.... 백준 알고리즘분류를 자꾸 열어보지 말자!!! github.com/SuyeonChoi/Algorithms/blob/master/Jungol/p1681.java SuyeonChoi/Algorithms Personal Algorithm Study::solving BOJ, Programmers, and SW Expert Academy - SuyeonChoi/Algorithms github.com

소수찾기를 제외한 두문제는 완전탐색보단 구현에 더 가깝게 느껴졌다. 모의고사 (Level.1) 문제 / 풀이 수포자 삼인방의 반복되는 찍기 방식을 각각 배열에 저장하고 문제 인덱스와 값을 비교했다. 처음에는 각 수포자의 배열마다 index 변수를 생성했는데 나머지 연산으로 개선하여 변수의 갯수를 줄였다. 다른 사람의 풀이를 보니까 스트림을 사용했던데 시간은 좀더 걸린다고 하니 나중에 찾아봐야겠다. 소수찾기 (Level.2) 문제 / 풀이 가장 완전탐색스러웠던 문제라고 느꼈다. 주어진 numbers를 정수 배열로 만든뒤 부분집합 함수를 생성해 숫자를 뽑았다. 그리고 뽑은 숫자를 조합 함수를 통해 가능한 숫자 조합을 만들어서 소수인 경우 Set 자료구조에 저장했다. 숫자의 최대 길이가 7로 매우작아 그냥 N..
1. 일꾼(?) 두명이 꿀을 채취하는 시작점을 조합을 이용해서 선택 2. 만약 채취량이 기준 C를 초과하는 경우 부분집합을 이용해서 최고 채취량을 선택 인덱스는 모든 칸을 0~N*N-1이라고 생각하고 (i / N, i %N) 좌표로 계산 조합과 부분집합을 모두 재귀를 사용해서 풀었다. N, M이 매우 작은 범위라서 쉽게 풀수 있었던것 같다. github.com/SuyeonChoi/Algorithms/blob/master/SW%20Expert%20Academy/Java/%EC%99%84%EC%A0%84%ED%83%90%EC%83%89/p2115.java SuyeonChoi/Algorithms Personal Algorithm Study::solving BOJ, Programmers, and SW Exper..

분명히 로컬과 원격 레포지토리가 일치하는데 내가 생성도 하지 않은 추적하지 않는 파일이 생겼다.. 원인부터 말하자면 "폴더 이름이 한글"이기 때문이다. 될수 있으면 폴더명을 한글로 만들지 않는 것이 베스트지만 알고리즘이랑 TIL에 간간히 폴더이름을 한글로 해놨었기 때문에.. 해결방법을 간단하게 남겨둔다. 아래와 같은 상태면 주로 폴더명이 한글이기 때문에 문제가 발생했다고 생각하면 된다. 이상태로 다른 파일과 함께 커밋해버리면 이렇게 폴더가 복제되서 한개가 더 생긴다.... 해결방법 1. 레포를 다시 클론받는다. 2. 명령어 두개를 입력해서 깃 속성을 변경한다. git config --local core.precomposeunicode false git config --global core.quotepat..