| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 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 |
- Volatile
- factory
- spring security
- lombok
- Dependency Injection
- 일급 객체
- Google OAuth
- builder
- OAuth 2.0
- synchronized
- 일급 컬렉션
- Spring
- java
- Today
- Total
목록분류 전체보기 (179)
HJW's IT Blog
문제 설명문제 설명한 변의 길이가 1인 정삼각형 2n+1개를 이어붙여 윗변의 길이가 n, 아랫변의 길이가 n+1인 사다리꼴을 만들 수 있습니다. 이때 사다리꼴의 윗변과 변을 공유하는 n개의 정삼각형 중 일부의 위쪽에 같은 크기의 정삼각형을 붙여 새로운 모양을 만들었습니다.이렇게 만든 모양을 정삼각형 타일 또는 정삼각형 2개를 이어 붙인 마름모 타일로 빈 곳이 없도록 채우려고 합니다. 정삼각형 타일과 마름모 타일은 돌려서 사용할 수 있습니다.타일을 놓을 때 다른 타일과 겹치거나 모양을 벗어나게 놓을 수는 없습니다. 위의 예시 모양을 채우는 방법 중 일부는 다음과 같습니다.사다리꼴의 윗변의 길이를 나타내는 정수 n과 사다리꼴 윗변에 붙인 정삼각형을 나타내는 1차원 정수 배열 tops가 매개변수로 주어집니다...
문제 설명당신은 1~n 사이의 수가 적힌 카드가 하나씩 있는 카드 뭉치와 동전 coin개를 이용한 게임을 하려고 합니다. 카드 뭉치에서 카드를 뽑는 순서가 정해져 있으며, 게임은 다음과 같이 진행합니다.처음에 카드 뭉치에서 카드 n/3장을 뽑아 모두 가집니다. (n은 6의 배수입니다.) 당신은 카드와 교환 가능한 동전 coin개를 가지고 있습니다.게임은 1라운드부터 시작되며, 각 라운드가 시작할 때 카드를 두 장 뽑습니다. 카드 뭉치에 남은 카드가 없다면 게임을 종료합니다. 뽑은 카드는 카드 한 장당 동전 하나를 소모해 가지거나, 동전을 소모하지 않고 버릴 수 있습니다.카드에 적힌 수의 합이 n+1이 되도록 카드 두 장을 내고 다음 라운드로 진행할 수 있습니다. 만약 카드 두 장을 낼 수 없다면 게임을 ..
https://school.programmers.co.kr/learn/courses/30/lessons/258709문제 설명A와 B가 n개의 주사위를 가지고 승부를 합니다. 주사위의 6개 면에 각각 하나의 수가 쓰여 있으며, 주사위를 던졌을 때 각 면이 나올 확률은 동일합니다. 각 주사위는 1 ~ n의 번호를 가지고 있으며, 주사위에 쓰인 수의 구성은 모두 다릅니다.A가 먼저 n / 2개의 주사위를 가져가면 B가 남은 n / 2개의 주사위를 가져갑니다. 각각 가져간 주사위를 모두 굴린 뒤, 나온 수들을 모두 합해 점수를 계산합니다. 점수가 더 큰 쪽이 승리하며, 점수가 같다면 무승부입니다.A는 자신이 승리할 확률이 가장 높아지도록 주사위를 가져가려 합니다.다음은 n = 4인 예시입니다.주사위 구성#1[1..
https://school.programmers.co.kr/learn/courses/30/lessons/258711문제 설명도넛 모양 그래프, 막대 모양 그래프, 8자 모양 그래프들이 있습니다. 이 그래프들은 1개 이상의 정점과, 정점들을 연결하는 단방향 간선으로 이루어져 있습니다.크기가 n인 막대 모양 그래프는 n개의 정점과 n-1개의 간선이 있습니다. 막대 모양 그래프는 임의의 한 정점에서 출발해 간선을 계속 따라가면 나머지 n-1개의 정점을 한 번씩 방문하게 되는 정점이 단 하나 존재합니다. 크기가 n인 도넛 모양 그래프는 n개의 정점과 n개의 간선이 있습니다. 도넛 모양 그래프의 아무 한 정점에서 출발해 이용한 적 없는 간선을 계속 따라가면 나머지 n-1개의 정점들을 한 번씩 방문한 뒤 원래 출발..
https://school.programmers.co.kr/learn/courses/30/lessons/258712?language=cpp문제 설명선물을 직접 전하기 힘들 때 카카오톡 선물하기 기능을 이용해 축하 선물을 보낼 수 있습니다. 당신의 친구들이 이번 달까지 선물을 주고받은 기록을 바탕으로 다음 달에 누가 선물을 많이 받을지 예측하려고 합니다.두 사람이 선물을 주고받은 기록이 있다면, 이번 달까지 두 사람 사이에 더 많은 선물을 준 사람이 다음 달에 선물을 하나 받습니다.예를 들어 A가 B에게 선물을 5번 줬고, B가 A에게 선물을 3번 줬다면 다음 달엔 A가 B에게 선물을 하나 받습니다.두 사람이 선물을 주고받은 기록이 하나도 없거나 주고받은 수가 같다면, 선물 지수가 더 큰 사람이 선물 지수..
Express 핵심 기능Express 란?웹 서버의 기본적인 기능을 제공하는 라이브러리request, response를 다룬다미들웨어express 의 request 와 response 사이에 위치하여 어떠한 동작을 하는 것모든 request 는 미들웨어를 거치게 된다express 는 미들웨어의 집합client 로 부터 request 를 받아 response를 만들어 다시 client 에게 반환한다app.get('/', (req, res) => { res.json({ message: '안녕, 코드잇 (;' });});최상위 경로로 request 가 들어오면 해당 콜백함수를 실행한다미들웨어의 사용법파라미터 2개(req, res) → request 객체, response 객체파라미터 3개(req, res, ..
Prisma 설치 / 초기화npm install prisma --save-devnpm install @prisma/clientnpx prisma init --datasource-provider db-type // qostgresql, mysql, sqlite 등Prisma Schema 생성// This is your Prisma schema file,// learn more about it in the docs: generator client { provider = "prisma-client-js"}datasource db { provider = "postgresql" url = env("DATABASE_URL")}model User { id String @id @defa..
필요한 데이터 관리 + 프론트엔드에 전송 → 이를 백엔드 서버라 부른다HTTP 메소드 + URL = 엔드포인트엔드포인트의 집함 = APIREST APINodeJS → 웹 브라우저 바깥에서 JS 를 사용할 수 있게 해주는 프레임워크EXPRESS → JS 백엔드 개발에서 가장 유명한 라이브러리Req 과 res 를 쉽게 다룰 수 있음특정 구조를 고집하지 않고 최소한의 기능만 제공MongoDB → 데이터를 테이블이 아닌 문서의 형태로 저장문서 하나 = document문서의 모음 = collection 예제 (ToDo) API 문서엔드포인트 GET /tasks GET /tasks/:id POST /tasksDELETE /tasks/:id PATCH /tasks/:idTASK 객체속성_id: string ..
커밋 히스토리git log현 시점까지 했던 모든 커밋 출력commit id, author, date, commit message 등이 나온다더 깔끔하게 보고 싶다면git log —prettygit commit 을 할 때, -m 없이 터미널에 입력하게 되면, vim 을 통해 commit message 를 남길 수 있다git history → commit 내역이때 HEAD 는 가장 새로운 commit 을 가르킨다HEAD 가 가르키는 커밋에 따라 working directory 구성최신 커밋 수정git add .git commit —amend두 커밋간 차이 보기git diff {이전 commit id} {이후 commit id}이전 커밋으로 resetgit reset —hard {commit id}hard o..
Git GIT 이란 ?코드 버전 관리를 할 수 있는 프로그램이다프로그래밍을 할 때, 점진적으로 수정해 나가는데, 이전 버전에 사용했던 파일이 필요할 때도 있다버전관리 프로그램이란? 나중에 특정 시점에 버전을 다시 꺼내올 수 있는 시스템을 의미함장점지난 과정 확인 가능이전 버전으로 돌아갈 수 있다Git은 버전관리 + 동시 협업 을 위한 프로그램Git 을 사용하면 외부에 백업 컴퓨터가 있는 것과 같다 (GitHub)Repository저장소 라는 의미프로젝트 디렉토리git 사용시 숨겨진 .git 디렉토리가 생성되는데, 이것을 레포지토리라 한다 (각 버전의 변경사항이 저장된다)Commit프로젝트에서 이런 저런 작업을 하다보면, 이때 프로젝트 디렉토리의 모습을 하나으 ㅣ버전으로 남기는 동작을 commit 한다 라..