본문 바로가기

ALL

MSI GF 시리즈 노트북 웹캠 카메라 안될 때 | 갑자기 OBS 가상 카메라로 설정 되었을 때 1. 문제갑자기 webex나 기본 카메라가 '카메라를 찾을 수 없음'이 떴다. 웹엑스 미팅이 있던 터라 당황했다. 근데 생각해보니 몇 년 전에도 같은 문제를 겪어서 유튜브로 정리해놓은 것이 있었다. 2. 문제 해결https://youtu.be/ysXBzqaCt6Q 더보기
폴더 아이콘 바꾸는 법 1. 원하는 아이콘 찾기 원하는 아이콘을 PNG로 찾는다. 무엇이든 되지만, 저는 여기 추천, 무료라서 안심하고 사용 가능합니다. https://www.flaticon.com/kr/ 저는 제가 그린 그림들을 모아놓은 폴더의 아이콘을 바꿀 예정이므로 다음과 같은 팔레트 아이콘을 택했습니다. 2. 확장자를 PNG에서 ICO로 바꾼다. 폴더의 아이콘으로 쓰려면, 이미지의 확장자가 .ico 여야 합니다. 밑의 사이트를 이용하여, PNG를 ico 확장자로 바꿉니다.https://icoconvert.com/ ICO Convert - Create Icons From PNG & JPG Images OnlineStep 3. Apply styles( optional ) Click the style you like to a.. 더보기
💚 백준 1940 주몽 1. 문제 분석문제 링크N개의 수 중 2개를 뽑아서 그게 M과 맞는지 계산하면 된다고 생각했다.그래서 조합을 사용했다. N이 15000개까지 주어진다. 15000C2 = 112492500 이다.주어진 시간이 2초임으로 20억 번의 계산이 가능한 상황에서 11억의 계산은 Safe다. 따라서 단순 조합을 해도 문제는 풀린다. (시간이 오래 걸렸지만...)나는 DO IT! 알고리즘 코딩테스트 책에서 소개한 투 포인터로도 문제를 풀어 보았다. 투 포인터를 쓰면 정렬 후 최대 N+1 번의 연산이 필요해서 총 N+1 +NlogN = O(NlogN) 의 시간이 든다.이걸 N의 최대 값인 15000으로 계산해보면, 15000 * log(15000) = 62641 개의 연산만 하면 되어서 훨씬 빠르다.두 방법 다 소개해.. 더보기
💚 백준 2018 수들의 합 5 1. 문제 분석문제 링크1~N까지 수 중에서 연속된 합으로 N이 나올 수 있는 가짓수 구하기시간 제한 2초, 주어지는 N의 최대값 10,000,000무엇을 최적화라 말하는지 아직 모르겠어서, 이것들의 의미가 와닿지 않는다.2. 푸는 원리투포인터로 풀기연속된 수들의 합을 축척한 변수 acc를 만든다.오른쪽 포인터 b가 움직일 때마다, acc 에 b 만큼 더한다.왼쪽 포인터 a가 움직일 떄마다 acc에서 a 만큼 뺀다.특정 시점에서 acc의 값이 N과 같아졌을 경우, N이 되는 가지수를 하나 센다.문제 푸는 방법은 생각났지만, 세부적으로 a와 b를 acc에 더하는 시점, while 문을 끝내는 시점 등에서 많이 해매서, 답지를 봤다.a와 b가 현재 존재하는 index 부분은 acc에 더해진 부분이라는 것을 .. 더보기
[Intellij] Git Shelve와 Stash의 차이 1. Git Shelve - 잠시 다른데 다녀올거니까. 작업하던 거 선반에 올려두자!git shelve를 하면 해당 Branch의 임시 저장소에 저장된다.현 branch의 변경사항을 들고, 다른 branch에 놔두는 행위를 못한다.해당 브랜치에 작업 하던 것을 임시 저장하고, 다른 branch에서 일 본 뒤에 다시 돌아와서 unshelved 하면 된다.임시저장한 거 빼내 오려면저걸 눌러서 다시 changes로 들고와야 한다.unshelved 했다고 해서 shelf에 저장된 임시 저장 내역이 사라지지 않는다. 없애고 싶다면 삭제하자.2. git stash / unstash - 현 branch에서 작업한 내역 들고 다른 branch로 갈래. 거기서 작업 계속 이어 갈래Intellij 에서는 git -> un.. 더보기
특화 프로젝트 Spring Security 분석 1. 개요4월 5일부로 특화 프로젝트가 끝났다. 이번 프로젝트에서 보안을 맡았는데, 항상 내가 맡은 파트를 정리해야겠다는 생각을 했다. 벌써 2주 반이 흘렀기에, 더 까먹기 전에 미리 정리해두려한다.해당 프로젝트의 전문을 보고 싶다면, 다음을 확인하자.SSAFY 10기 구미 2반 특화프로젝트 WALK_WALK2. 전개도3. 코드 분석(1) JwtAuthFilter 안에 있는 JwtUtil 분석import io.jsonwebtoken.*;import io.jsonwebtoken.security.Keys;import jakarta.annotation.PostConstruct;import jakarta.servlet.http.HttpServletRequest;import lombok.RequiredArgsCo.. 더보기
💜 백준 2108 통계학 JAVA 1. 문제 설명[문제 링크](https://www.acmicpc.net/problem/2108)산술 평균, 중앙값, 최빈값, 범위를 구하면 된다. 2. 푸는 원리 산술 평균 -> 총합 / 머릿수 중앙값: 중앙에 있는 녀석 계산 최빈값: TreeMap을 사용 Key = 입력 받은 값, value = 해당 값이 나온 횟수, TreeMap은 순서가 보장됨으로, 입력을 한번 정렬한 후에 TreeMap에 넣으면 된다. 범위 : 최대값 - 최소값 3. 코드 분석import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.Arrays;import java.util.TreeMap;/* * .. 더보기
JWT에 대하여 1. JWT란 무엇인가?기본적인 토큰 인증 방식을 따르고, 거기서 토큰 자체를 강화한 방식이라 생각하면 된다.원래의 토큰 인증 기반에서 요청자가 보내온 ID/PW 가 DB에 존재하면 (우리 회원이 맞으면) 그 요청자에게 자신들의 API를 쓸 수 있는 허가증인 토큰을 전해줬었다. 여기서 더해 JWT의 경우 토큰을 만들 때, 사용자의 정보(간단한 개인정보 등 +@)를 암호화하여 만든다.이렇게 되면 무엇이 좋을까?아까 토큰 자체가 사용자에 대한 개인 정보라고 하였다. 회원가입을 하여 토큰을 받았다면, 이후 API 요청을 할 때, 토큰을 Header나 Cookie에 넣어서 보낸다. 만약 클라이언트가 원하는 요청이 사용자의 개인정보에 대한 요청이라면, 서버에서는 DB를 조회할 필요없이 토큰을 복호화 하여 그 안의.. 더보기