전체 글

· 기타
문제를 풀면서 새롭게 알게 되거나, 자주 찾아보거나, 기억할 만한 내용 정리하기 (2024.10.15 ~ 추가중)collectionsCounterfrom collections import Counter 개수를 세주는 Dictionary 형태의 클래스이다.  Counter(배열)Counter(["hi", "hey", "hi", "hi", "hello", "hey"])>>> Counter({'hi': 3, 'hey': 2, 'hello': 1}) 각 원소가 몇 번씩 나오는지가 저장된 객체를 반환한다.  Counter(문자열)Counter("hello world")>>> Counter({'h': 1, 'e': 1, 'l': 3, 'o': 2, ' ': 1, 'w': 1, 'r': 1, 'd': 1}) 문자가 ..
문제https://school.programmers.co.kr/learn/courses/30/lessons/138476 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 소요 시간 : 15분난이도 : LV 2접근 방법1. 종류별 개수를 센 뒤 많은 순으로 정렬한다.ex. 1, 3, 2, 5, 4, 2, 31: 1개4: 1개2: 2개3: 2개5: 2개=> [2, 2, 2, 1, 1] 2. 종류별 개수 리스트를 돌면서 k만큼 가져간다. ex. k = 62+2+2 => 3번째 원소까지 가져갈 수 있다.ex. k=42+2 => 2번째 원소까지 가져갈 수 있다.풀이나의 ..
프로세스서류 접수 기간 : 9/2 ~ 9/20 결과 발표 : 10/21차 코딩 테스트 : 10/5결과 발표 : 10/82차 코딩 테스트 : 10/13결과 발표 : 10/17 채용 공고저는 Backend Engineer로 지원하였습니다.  서류 자유양식 이력서와 포트폴리오(선택) 제출 가능합니다. 작성되어 있던 노션 이력서를 링크로 제출하였습니다.  1차 코딩 테스트방식온라인문항 : 3문제 (효율성 2문제, 정확성 1문제)시간 : 155분 플랫폼 : Codility응시 시 주의 사항 : 화상감독 X, 검색 불가, 외부 IDE 불가응시 가능 언어 : C, C++, C++20, C#, Dart, Go, Java11, Java8, JavaScript, Kotlin, Lua, Objective-C, Pascal,..
문제https://www.acmicpc.net/problem/2343 소요 시간 : 40분난이도 : 실버 1접근 방법 블루레이의 최소 길이를 구하기 위해 이분탐색을 이용한다. 1. left, right 값 초기화left 값 : 강의 길이 중 최댓값 ->  블루레이 개수 N개right 값 : 모든 강의 길이의 합 -> 블루레이 개수 1개 2. 체크강의를 돌면서 블루레이에 1개씩 강의 길이를 더해준다.초과되면 블루레이 개수를 1개 더하고 새 블루레이에 더해준다.블루레이 개수가 M보다 많아지면 중단한다. 3. 정답 갱신 및 이분탐색 범위 조정블루레이 개수가 M보다 크면 더 길게 담아도 되므로 left를 늘린다. 블루레이 개수가 M보다 작거나 같으면 더 작게 담아도 되므로 right를 줄인다. ex. N = ..
문제https://www.acmicpc.net/problem/2792 소요 시간 : 1시간난이도 : 실버 2접근 방법1차 (틀린 풀이)M을 N개로 나누는 과정이라고 생각을 해보았었다. ex. N = 5, M = 2 (7, 4)M = 2 -> 3개로 만들기 위해 가장 큰 수인 7을 반으로 나눈다. 7, 4 -> 3, 4, 4M = 3 -> 4개로 만들기 위해가장 큰 수인 4를 반으로 나눈다.  3, 4, 4 -> 3, 2, 2, 4M = 4 -> 5개로 만들기 위해가장 큰 수인 4를 반으로 나눈다. 3, 2, 2, 4 -> 3, 2, 2, 2, 2 이때 가장 큰 값(3)이 질투심이라고 생각했다.하지만 이 방법은 N값의 범위가 최대 10억이기 때문에 시간초과가 난다.2차 질투심에 초점을 맞추었다. 질투심이 ..
문제https://softeer.ai/practice/6293 Softeer - 현대자동차그룹 SW인재확보플랫폼 softeer.ai 소요 시간 : 1시간난이도 : LV 3접근 방법 1. 완전탐색1. 모든 돌에서 출발해본다.2. 출발한 돌에서 다음 큰 돌을 모두 방문해본다.   -> 시간복잡도 : O(2^N) ..터지는게 당연했다^^ 2. DPdp[i] = i 돌까지 도달하는데 제일 많이 밟을 수 있는 징검다리의 수 dp[i] = dp[j] + 1 이라고 할 때 j의 조건 : 1. i보다 작아야 한다. (왼쪽 돌)2. i번째 돌보다 j번째 돌의 크기가 작아야 한다.  이를 만족하는 j 중에서도 dp[j]가 가장 큰 걸 선택하면 된다.  -> 시간복잡도 : O(N^2)나의 풀이1. 완전탐색#include#d..
· 기타/TIL
📚 KEYWORD DBDECIMAL, FLOAT, DOUBLE의 차이 [MySQL] 데이터 타입(data_type) 정리개요 MySQL 데이터 타입을 기록용으로 저장하기 위한 포스팅 공통 데이터 형식(M) : M 부동소수점 및 고정소수점 타입의 경우 정수타입의 최대 출력 폭을 나타낸다. ( 자릿 수 ) 문자형 타입의 경우spiderwebcoding.tistory.com  datetime과 timestamp의 차이타임존 적용 여부 TIMESTAMP vs DATETIME (feat. ORM)공통점, 차이점, 그리고 ORM을 사용할 때의 주의점을 알아보자velog.io  [TIL / 데이터 관리] MySQL TIMESTAMP vs DATETIMEData Logo한참 MySQL의 데이터 타입을 정리해 나가고..
문제 상황서버를 분리하게 되면서 DB도 함께 분리하게 되었다.이에 따라 각각의 멀티 모듈에 .env가 생겼고 이걸 적용시키고 싶었다..├── auth-server│ └── ...├── core│ └── ...├── resource-server│ ├── build.gradle│ ├── docker-compose.resource.yml│ ├── .env # 이 파일이 제대로 로드되지 않음│ └── src│ └── main│ └── resources│ └── application.yml└── settings.gradle 각 모듈의 application.yml 파일은 .env 파일에 정의된 환경 변수를 사용하여 설정을 구성하고 있었다...
· 기타
0. 코딩 컨벤션이란?코딩 컨벤션은 읽고, 관리하기 쉬운 코드를 작성하기 위한 일종의 코딩 스타일 규약입니다.코딩 컨벤션을 준수하면 가독성이 좋아지고, 성능에 영향을 주거나 오류를 발생시키는 잠재적 위험 요소를 줄여줍니다. 특히 규모가 큰 프로젝트일수록 유지보수 비용을 줄이는 데 도움이 됩니다.이렇게 중요한 코딩 컨벤션을, 일일히 지키기엔 실수도 많고 번거롭습니다.이를 위해 IntelliJ에서 설정하여 저장만 하면 자동으로 준수하도록 구축할 수 있습니다!  1. 코딩 컨벤션 선정하기자바 코딩 컨벤션에는 주로 구글 코딩 컨벤션과 네이버 코딩 컨벤션이 존재합니다.네이버 : https://naver.github.io/hackday-conventions-java/구글(번역본) : https://github.co..