전체 글21 단조 큐 https://www.acmicpc.net/problem/11003 단조 큐란?큐에 들어있는 어떠한 값들의 집합이 단조성을 보이는 것 위의 백준 문제는 수열을 순회하면서 특정 구간에 대해 최솟값을 찾는 문제어떤 구간에서 최솟값보다 큰 수들이 무시된다는 점에서 수열을 순회하면서 상대적으로 큰 수들을 배제하면,구간에 알맞은 최솟값을 남길 수 있을 것이다. import java.io.BufferedReader;import java.io.InputStreamReader;import java.util.ArrayDeque;import java.util.Deque;import java.util.StringTokenizer;public class Main { static class Node { int.. 2024. 9. 9. Docker 공부하기 (기초) 공통 프로젝트를 하면서 인프라를 할 줄 아느냐 모르느냐에 따라 편의성이 달라진다는 것을 깨달았다.능숙하게 모든 것을 하기는 힘들지만, 기초적인 도커, Jenkins, 서버 배포 등을 공부해보고자 한다. 오늘은 그 첫 번째인 도커 기초이다.1. 도커 기초 강의도커(Docker)란?컨테이너 기반의 오픈소스 가상화 플랫폼어떤 프로그램을 외부 환경과 격리 시켜 구동할 수 있게 해주는 소프트웨어개발 후 가동을 시킬 때 우리가 쓰고 있는 OS 환경에 영향을 많이 받지 않게 격리 시켜 구동할 수 있게 해주는 것컨테이너(Container)란?OS 상에 논리적인 영역(컨테이너)을 구축하고, 애플리케이션이 작동하는데 필요한 요소들을 모아 별도의 서버처럼 동작하는 것필요한 요소만으로 구성되어 있어 오버헤드가 적음Infras.. 2024. 9. 1. [코드트리 조별 과제] 세 수의 합 B형 대비를 위해 HashMap 공부를 하는 도중에 풀었던 문제다.N개의 정수 중 서로 다른 위치의 정수 3개를 골라 K를 만들 수 있는 경우의 수를 구하는 문제인데,생각보다 까다롭기도 하고, 쉬운 방법으로 풀어낼 수 있어 글을 작성하기로 했다.import java.util.*;import java.io.*;public class Main { public static void main(String[] args) throws Exception { // Scanner sc = new Scanner(System.in); BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); StringTok.. 2024. 8. 25. JWT 심화 보안을 위한 JWT 심화토큰 사용 추적로그인 성공 JWT 발급 : 서버측 → 클라이언트로 JWT 발급권한이 필요한 모든 요청 : 클라이언트 → 서버측 JWT 전송JWT는 매시간 수많은 요청을 위해 클라이언트의 JS 코드로 HTTP 통신을 통해 서버로 전달해커는 클라이언트 측에서 XSS를 이용하거나 HTTP 통신을 가로채서 토큰을 훔칠 수 있음→ 여러 기술을 도입하여 탈취를 방지하고 탈취당했을 시 대비 로직이 필요다중 토큰 : RefreshToken과 생명 주기여러 문제를 예방하기 위해 Access/Refresh 토큰 개념 등장자주 사용되는 토큰의 사용주기는 짧게(약 10분) 이 토큰이 만료되었을 때 함께 받은 Refresh 토큰(24시간 이상)으로 토큰을 재발급권한이 필요한 모든 요청 : Access 토.. 2024. 8. 11. OAuth2.0 + SpringSecurity 이번주는 OAuth2.0과 SpringSecuirty를 이용한 사용자 로그인을 가지고 왔다. 프로젝트에 이미 써먹고 있지만, 원리부터 과정까지 이해하니 이전에 코드만 이해하고 적용했던 것보다 훨씬 이해가 잘 된다. 다음주는 마지막으로 OAuth 2.0과 Jwt를 이용한 로그인을 공부해보겠다.실습 목표 및 간단한 동작 원리실습 목표Oauth20 클라이언트와 스프링 시큐리티 6 프레임워크를 활용하여 신뢰할 수 있는 외부 사이트로부터 인증을 받고, 전달 받은 유저 데이터를 활용하여 세션을 만들고 인가를 진행구현인증 : 네이버 소셜 로그인, 구글 소셜 로그인(코드 방식)인가 : 세션 방식을 통한 경로별 접근 권한인증 정보 DB 저장 후 추가 정보 기입OAuth2.0 인증 방식 및 시큐리티 동작 원리인증 서버와 .. 2024. 8. 4. [코드트리 조별과제] 금 채굴하기 https://www.codetree.ai/missions/2/problems/gold-mining?&utm_source=clipboard&utm_medium=text N * N 크기의 이차원 영역 안에서 마름모 모양으로 금을 채굴할 때,손해를 보지 않고 채굴할 수 있는 최대 금의 개수를 찾는 문제 내가 제출한 코드import java.util.*;import java.io.*;public class Main { static int[][] grid; static int N, M, cnt; public static void main(String[] args) throws Exception { BufferedReader br = new BufferedReader(new Input.. 2024. 7. 27. 이전 1 2 3 4 다음