분류 전체보기 291

[백준 13305] 주유소 - JAVA

https://www.acmicpc.net/problem/13305 그리디 문제다. 현재 도시의 기름 값을 기준으로, 기름 값이 더 싼 도시를 찾을 때 까지 달린다. 더 싼 도시를 찾았다면, 그 도시의 기름 값을 기준으로 앞선 과정을 반복한다.import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.Arrays;class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)..

[백준] PS/Java 2025.01.28

[백준 25970] 현대 모비스 에어 서스펜션 - JAVA

https://www.acmicpc.net/problem/25970 완전 탐색을 해야함은 자명하다. Java로 생각한 방법 중 최고 복잡도가 나오는 (부분문자열 기반, 출력 최적화x)로 풀었는데 통과되었다. 아마 "특정 언어에서 쉬운 문제"가 아닌가 싶다. 정해(문제 분류)는 비트마스킹을 활용한 풀이다. (판단데이터 B (B.length  난이도 기여에 가면 좀 더 어려운 알고리즘을 적용할 수 있다고 써있다. import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;class Main { public static void main(String[] args) throws IOException { ..

[백준] PS/Java 2025.01.28

[백준 26091] 현대모비스 소프트웨어 아카데미 - JAVA

https://www.acmicpc.net/problem/26091 입력을 오름차순 정렬한다. l = 현재 최소값 포인터, r = 현재 최대값 포인터로 정의한다. l+r >= M 이라면, ans++하고 다음 비교 (l++, r--) 로 넘어간다. l+r  import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.Arrays;import java.util.StringTokenizer;class Main { public static void main(String[] args) throws IOException { BufferedReader br = new Buffere..

[백준] PS/Java 2025.01.28

[백준 2698] 인접한 비트의 개수 - JAVA

https://www.acmicpc.net/problem/2698 배열크기 & 한번의 탐색 복잡도 = 100(N) * 2(0 or 1) * 100(K) = 2만전체 복잡도 = 1000(TC) * 2만 = 2천만 dp[n][2][k] = n번째 자리에 0 or 1로 도달했을 때 인접 비트가 k인 경우의 수 n번째 자리가 0이면[n-1번째 자리가 0], [n-1번째 자리가 1]인 경우에서 k가 변하지 않는다. n번째 자리가 1이면[n-1번째 자리가 0]인 경우 k가 변하지 않는다.[n-1번째 자리가 1]인 경우 k가 1 증가한다.import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java..

[백준] PS/Java 2025.01.19

찍먹일기 (Kafka, TDD, Event Sourcing Pattern)

1.인프런 TDD 무료강의 강의 커리큘럼 1/4정도 찍먹이전 TDD 개인 탐방글:https://sh3542.tistory.com/10  강의:https://www.inflearn.com/course/%EC%8A%A4%ED%94%84%EB%A7%81%EB%B6%80%ED%8A%B8-%EC%8B%A4%EC%A0%84-%EC%83%81%ED%92%88%EC%A3%BC%EB%AC%B8-tdd#reviews [지금 무료]실전! 스프링부트 상품-주문 API 개발로 알아보는 TDD 강의 | 이중석 - 인프런이중석 | 스프링부트를 이용해 TDD로 웹 애플리케이션을 만드는 방법을 배웁니다. TDD를 통해 개발 생산성을 유지하고 신뢰가능한 웹 애플리케이션을 만드는 방법을 얻으실 수 있을 겁니다., 실무www.inflear..

헥사고날 아키텍처 탐방 일시정지

한달간 짬날 때마다 탐방했고 사이드 프젝하고싶은게(유투브 유틸라이저) 생겨서 중지 repo:https://github.com/dltkdgkr123/hexagonal-architecture based on:https://github.com/thombergs/buckpal  배운 것 :- 테스트 코드1. mockito기반 모킹 찍먹 (공부할 가치가 충분한 좋은 기능이었음)2. JPA 테스트, Spring Boot 통합 테스트 일부3. Parameterized 테스트 경험4. 테스트 네이밍 컨벤션 (카멜 + 스네이크 케이스 혼합해서 기대동작 자세히/가독성있게 적기)5. sql 파일 import해서 사용하기 (@Sql은 intellij 커뮤니티 버전에서 지원 안해줘서 일단 테스트용 .properties 파일에 ..

IntelliJ IDEA에서 TODO 관리하기

쓰는 방법은 그냥 주석에 예약어를 쓰면 된다. (e.g. TODO) 첫번째 이점은,  키워드를 사용한 블록이 하이라이트 처리되어 식별이 쉽다. (settings에서 녹색 이외 색상 설정도 가능)  멀티 라인도 가능하다.다만 그루비처럼? 공백으로 구분하는건지 들여쓰기가 같아지면 하이라이트가 해제된다.(확실하진 않지만 사실상 저 양식을 굳이 무시하고 쓸 일 이유도 없기에 넘겼다.)  또한, 해당 탭에서 TODO를 한눈에 모아 볼 수 있으므로 편리하다. (FIXME도 같이 트래킹해줌)  개인 프로젝트에서 누릴수 있는 호사로, 노션에 기록하던 우선순위 그냥 텍스트파일로 프로젝트에 옮겨적었다.(물론 이거도 트래킹해줌)

주석중독

요즘 style로 이거 쓰는 중https://github.com/google/styleguide/blob/gh-pages/intellij-java-google-style.xml styleguide/intellij-java-google-style.xml at gh-pages · google/styleguideStyle guides for Google-originated open-source projects - google/styleguidegithub.com  근데 약간의 고증이 있다. tabsize=2라서 불편한건https://github.com/loom/loom-java/blob/main/.editorconfig이거랑 동시 적용해서 해결했는데 각 메소드/클래스 레벨로 javaDoc 주석을 안달면 무차별..

Intelij IDEA 백그라운드 화면 바꿈

ChatGPT한테 "재미있고 쓸모없는 인텔리제이 플러그인 추천해줘" 라고 해서 찾아냄플러그인 이름은 Background image Plus지정한 폴더에 있는 이미지를 n분마다 IDE 백그라운드 화면으로 설정해줌원래 One Dark theme 쓰고 있었는데, 요루시카에 한창 빠져서 바꿈 적용 방법은1. file -> settings -> plugins -> background image plus 다운2. 폴더 생성 및 원하는 이미지 파일 넣기3. file -> settings -> appearance & behavior -> background image plus에 폴더 경로 지정