본문 바로가기

Study102

[Study 011] Real MySQL 스터디 주제 Real MySQL (개정판. 백은빈, 이성욱 저)을 읽고 매주 모여서 토론 및 질문. 참가자 https://github.com/nahwasa https://github.com/ohgillwhan https://github.com/woogiekim https://github.com/K-jun98 일정 (완료) 1주차 2023-04-02 : 1~4장 2주차 2023-04-09 : 5, 8장 3주차 2023-04-16 : 9장 4주차 2023-05-01 : 10장 5주차 2023-05-07 : 11.4장까지 6주차 2023-05-14 : 11장 끝까지 7주차 2023-05-21 : 15.5까지 (12~14장 제외, 15장 나머지 부분 제외) 8주차 2023-05-28 : 16장 2024. 1. 23.
[Study 010] 알고리즘 문제해결전략 (종만북) 목차 스터디 주제 프로그래밍 대회에서 배우는 알고리즘 문제 해결 전략 (aka 종만북) 참가자 https://github.com/nahwasa (boj : nahwasa) https://github.com/kwanik-kor (boj : rhksdlr134) https://github.com/JustBestRyuna (boj : specidiee) https://github.com/r4pidstart (boj : r4pidstart) https://github.com/kevinlys00 (boj : kevinlys00) 진행 방법 github 참고 일정 (완료) ~2023-03-13 : 인원 모집 2023-03-13 게더타운 : 킥오프 1주차 2023-03-14 ~ 2023-03-20 : 6섹션 - 무식.. 2024. 1. 23.
[Study 009] 지속적인 통합 스터디 주제 지속적인 통합 (폴 M. 듀발 저) 을 읽고 매주 모여서 토론 및 질문. 참가자 - https://github.com/nahwasa - https://github.com/ohgillwhan - https://github.com/woogiekim - https://github.com/K-jun98 일정 (완료) 1주차 2023-02-26 : 1장, 2장 2주차 2023-03-05 : 3장, 4장 3주차 2023-03-13 : 5장, 6장 4주차 2023-03-19 : 7장, 8장, 9장 내용 정리 [지속적인 통합] 1장. 시작하기 [지속적인 통합] 2장. 지속적인 통합 도입하기 [지속적인 통합] 3장. 지속적인 통합을 이용해 위험 줄이기 [지속적인 통합] 4장. 변경될 때마다 소프트웨어를 빌드.. 2024. 1. 23.
[종만북] CHILDRENDAY - 어린이날 (자바 java) 알고리즘 문제해결전략(종만북) 스터디 메인 페이지 목차 문제 : aoj-CHILDRENDAY 풀이 만약 특정 자릿수(D)만을 포함하여 만든 십진수에 대해 N으로 나누어 떨어지는 가장 작은 수를 구하는 문제가 있다고 해보자. 이 경우 웰-논한 방법이 있는데, 나머지 연산의 성질을 이용하면 된다. 사용할 수 있는 자릿수가 '1, 2, 3'일 경우 1을 뒤에 붙이는 경우, 2를 붙이는 경우, 3을 붙이는 경우가 있을 것이다. 이런식으로 해보면 다음과 같이 진행될 것이다. 각 단계마다 진행하다가 N으로 나눈 나머지가 0일 경우 멈추면 된다. 이 때 구하려는 수를 C라 할 때, C는 엄청 커다란 수가 될 수 있다. 대충 N이 10000이므로 총 1만자리까진 가능 할 것같다. 따라서 이걸 큰 수로 계산하게 되면 시.. 2023. 7. 17.
[종만북] SORTGAME - Sorting Game (자바 java) 알고리즘 문제해결전략(종만북) 스터디 메인 페이지 목차 문제 : aoj-SORTGAME 풀이 우선 생각해야 할 부분은, '한 수열에 같은 수가 두 번 출현하지 않는다고 가정해도 좋다. 모든 수는 1부터 1백만 사이의 정수' 라는 지문 부분이다. 1부터 1백만 사이로 입력이 들어오는게 의미가 있을까? 어차피 대소 관계 순서만 동일하다면 전혀 상관 없다. 따라서 값 압축을 통해 1부터 N까지의 값으로 우선 압축해서 생각하자. 예를들어 N개가 '1000000 4 2 5000' 이렇게 들어왔다면, 압축해서 '4 2 1 3'와 같이 생각하면 된다. 또한 N은 최대 8 이므로, 정수 하나로 표현할 수 있다. 즉 위의 '4 2 1 3'은 '4213'에 해당한다. private int compressedNum(int .. 2023. 7. 17.
[종만북] GRADUATION - 졸업 학기 (자바 java) 알고리즘 문제해결전략(종만북) 스터디 메인 페이지 목차 문제 : aoj-GRADUATION 풀이 dfs나 bfs로 풀 수 있는 문제이다. 상당히 구현하기 까다로웠던 것 같다. 풀이는 주석으로 대신하는게 더 이해하기 좋을 것 같다. ... private void solution() throws Exception { StringTokenizer st = new StringTokenizer(br.readLine()); int n = Integer.parseInt(st.nextToken()); int k = Integer.parseInt(st.nextToken()); int m = Integer.parseInt(st.nextToken()); int l = Integer.parseInt(st.nextToken().. 2023. 5. 15.
[종만북] JOSEPHUS - 조세푸스 문제 (자바 java) 알고리즘 문제해결전략(종만북) 스터디 메인 페이지 목차 문제 : aoj-JOSEPHUS 풀이 문제에서 제시된 방식대로 시뮬레이션을 돌려도 통과되는 문제이다. 실제로 2개가 남을 때 까지 List에서 제거하는 방식으로 시뮬레이션을 돌려서 풀었다. 코드 : github import java.io.BufferedReader; import java.io.InputStreamReader; import java.util.ArrayList; import java.util.List; import java.util.StringTokenizer; public class Main { static BufferedReader br = new BufferedReader(new InputStreamReader(System.in)).. 2023. 5. 15.
[Study 008] 클린 아키텍처 스터디 주제 '만들면서 배우는 헥사고날 아키텍처 설계와 구현' 책과 '만들면서 배우는 클린 아키텍처' 책 (DDD책 등 필요하다면 더 추가 예정)을 보면서 토론 및 질문. 최종적으로 스프링 프로젝트에 사용하기 위해 레이어드 아키텍처와 클린 아키텍처(헥사고날 아키텍처), DDD에 대해 이해하는게 목적. 참가자 - https://github.com/nahwasa - https://github.com/sorrymommy - https://github.com/Octoping925 - https://github.com/realain 일정 (완료) 매주 토요일 오후 2시 게더타운에서 진행 - 1주차 (2023-02-11) : 킥오프 + '만들면서 배우는 헥사고날 아키텍처 설계와 구현' 1장 - 2주차 (2023-0.. 2023. 4. 29.
[Study 007] 이펙티브 자바 스터디 주제 이펙티브 자바. 각 주차별로 읽어와서 질문, 토론, 추가로 하고 싶은 얘기 진행 참가자 8명 일정 (완료) 1주차 (2023-02-13) : 1장, 2장 2주차 (2023-02-20) : 3장 3주차 (2023-02-27) : 4장 4주차 (2023-03-13) : 5장 5주차 (2023-03-27) : 6장 6주차 (2023-04-03) : 7장, 8장 7주차 (2023-04-10) : 9장, 10장 8주차 (2023-04-17) : 11장, 12장 스터디 내용 정리 [이펙티브 자바 정리] 2장 - 객체 생성과 파괴 (추가로 정리글은 작성하지 않을 예정입니다. 중간중간 모르는 내용이고 유용한게 보이면 개별적으로 작성할 것 같습니다.) 2023. 4. 17.
[종만북] MATCHORDER - 출전 순서 정하기 (자바 java) 알고리즘 문제해결전략(종만북) 스터디 메인 페이지 목차 문제 : aoj-MATCHORDER 풀이 생각해야 할 조건은 두 가지이다. 1. 러시아와 한국 팀이 1:1로 매칭이 되긴 해야 한다. 2. 러시아팀의 레이팅 이상이기만 하다면 그 차이는 무시할 수 있다. 위 두가지를 생각하면서 최대한으로 이기려고 한다면, 각 러시아팀 레이팅에 대해 최대한 차이가 적은 그 이상의 한국팀 레이팅을 매칭시켜주면 된다. 또한 1:1로 매칭되긴 해야하므로, 현재 러시아팀 레이팅 이상의 값이 남는게 없다면 남은 한국팀 레이팅 중 가장 낮은 값을 매칭해준다. 현재 러시아의 레이팅 이상이면서 가장 작은 값은 이분 탐색으로 찾도록 구현했다. 코드 : github import java.io.BufferedReader; import j.. 2023. 4. 17.