분류 전체보기 363

백준 1987 알파벳(c++)

https://www.acmicpc.net/problem/1987 1987번: 알파벳 세로 R칸, 가로 C칸으로 된 표 모양의 보드가 있다. 보드의 각 칸에는 대문자 알파벳이 하나씩 적혀 있고, 좌측 상단 칸 (1행 1열) 에는 말이 놓여 있다. 말은 상하좌우로 인접한 네 칸 중의 한 칸으 www.acmicpc.net 이 문제는 DFS + 백트래킹 문제입니다. 보자마자, DFS보다 백트래킹 먼저 생각했습니다. 왜냐하면, 모든 말이 지날 수 있는 최대 칸수를 구해야 하기 때문입니다. 그래서 DFS로 탐색하면서, 조사한 모든 경우의 수(말이 지날수 있는 모든 경우의 수)들 중 최댓값을 구해주면 됩니다. #include #include using namespace std; char board[21][21]; ..

백준 10026 적록색약(c++)

https://www.acmicpc.net/problem/10026 10026번: 적록색약 적록색약은 빨간색과 초록색의 차이를 거의 느끼지 못한다. 따라서, 적록색약인 사람이 보는 그림은 아닌 사람이 보는 그림과는 좀 다를 수 있다. 크기가 N×N인 그리드의 각 칸에 R(빨강), G(초록) www.acmicpc.net 백준 골드5 난이도이고, 비교적 간단한 DFS 였습니다. 적록색약인 사람(빨강, 초록 구분 x)이랑, 적록색약이 아닌 사람(빨강, 초록 구분 o)의 DFS 함수를 각각 따로 만들어주었습니다. 적록색약인 사람의 경우에는 기준점이 빨강이면, DFS함수를 돌렸을 때 상하좌우의 배열값이 빨강이랑 초록이면 DFS함수를 재귀적으로 돌려주는 방향으로 알고리즘을 설계하였습니다. 그렇지 않은 경우(파랑)일..

백준 1520 내리막 길(c++)

https://www.acmicpc.net/problem/1520 1520번: 내리막 길 여행을 떠난 세준이는 지도를 하나 구하였다. 이 지도는 아래 그림과 같이 직사각형 모양이며 여러 칸으로 나뉘어져 있다. 한 칸은 한 지점을 나타내는데 각 칸에는 그 지점의 높이가 쓰여 있으 www.acmicpc.net 이 문제는 막연하게, DFS로 풀면 안됩니다. 높이, 너비가 500이기에 너비 우선 탐색으로만 풀려면 정말 오랜 시간이 걸리기 때문입니다. 그래서 (DP + DFS)로 풀 수 있습니다. #include #include using namespace std; int board[501][501]; int mov[4][2] = {{-1,0},{1,0},{0,1},{0,-1}}; int dp[501][501];..

[Spring] Spring Security + JWT를 이용한 토큰 발급 및 회원가입, 로그인 로직 구현

JWT란 무엇인가 ? RFC 7519 웹 표준으로 지정되어 있고, JSON 객체를 사용해서 토큰 자체에 정보들을 저장하고 있는 Json Web Token이다. 헤비 하지 않고, 아주 간편하고 쉽게 적용할 수 있어서 사이드 프로젝트를 진행할 때 매우 유용한 방식이다. 몇 가지 고려사항만 잘 대응하면, 대규모 프로젝트에도 충분히 이용 가능한 방식이다. JWT 구성요소 Header : Signature를 해싱하기 위한 알고리즘 정보들이 담겨있음. Payload : 서버와 클라이언트가 주고받는, 시스템에서 실제로 사용될 정보에 대한 내용들을 담고 있다. Signature : 토큰이 유효성 검증을 위한 문자열, 이 토큰이 유효한 토큰인지 확인 가능. JWT 장점 - 중앙의 인증서버, 데이터 스토어에 대한 의존성 ..

Java/Spring 2023.01.08

일본여행 2023.01.03 5일차 도쿄(Tokyo), 나리타(narita) 공항 -> 인천 공항 돌아오는 과정

이제 돌아갈 시간이네요 .. 어제는 경황이 없어 글을 쓰지 못했어서 오늘이라도 마무리 느낌으로 작성해보려고 합니다. 뒤편으로 이동하면, 숙소가 있습니다. 이제 다시 못 본다니 살짝 아쉽네요 !! 저기 계단에서 친구들과 사진도 찍었고, 세븐일레븐 편의점에서 다양한 먹을거리와 술도 먹었습니다 ! 체크아웃이 오전 10시였는데, 친구들과 저는 7시 반에 알람을 맞췄는데 전부 다 9시 넘어서 일어나서 급하게 나왔습니다. 친구들이 너무 게을러 결국 제가 먼저 씻었네요 ... ㅠㅠ 그래도 20분 정도 여유를 두고 나왔습니다. 개인적으로 도토루 커피보다, 여기 커피가 더욱 맛있었던 것 같습니다. 그리고 샐러드도 정말 맛있었고, 빵 굽기마저 완벽해서 아침을 브런치로 만족스럽게 해결할 수 있었습니다. 태민이는 지하철 카드..

일상/여행 2023.01.04

일본여행 2023.01.02 4일차 일본 하라주쿠(harajuku), 도쿄 텔레포트(Tokyo Teleport) -> 오다이바

오늘은 일어나자마자 재윤(대학교 5년 지기 친구)이랑 하라주쿠로 이동해서 하라주쿠 쇼핑거리를 둘러봤습니다. 태민이라는 친구는 아쉽게도 쇼핑을 싫어해서 따로 놀기로 했습니다. 저랑 재윤이는 어제부터 스투시, 슈프림, 빔즈 등 다양한 브랜드몰을 둘러보기로 얘기한 상태라서 10시쯤 일어나 천천히 준비하고 나갔습니다. 우선 배가 너무 고픈 상태라서, 사전에 먹기로 한 레드락이라는 스테이크 덮밥집을 찾았습니다. 긴 말 필요 없습니다. 무조건 드셔보세요. 간도 진짜 너무 잘 배어있고, 밥도 너무 맛있었습니다. 간단하게 와인이랑 먹었는데 친구도 맛있다고 했습니다 ! 다시 일본에 온다면 꼭 재방문하고 싶은 가게였습니다. 식사를 마치고, 바로 옆에 일본 유명 브랜드 옷 및 잡화점인 빔즈를 찾았습니다. 진짜 그냥 다 사고..

일상/여행 2023.01.03

일본여행 2023.01.01 3일차 시부야(Shibuya), 하라주쿠(Harajuku)

이제 3일 차에 다다랐는데요,, 전날 친구들과 과음을 해 늦잠을 자고 일어나서 시부야역으로 이동했습니다. 원래 계획은 시부야에 돈가스 맛집을 가려고 했습니다. 그런데, 1월 1일이라서 그런지 쉬는 가게가 너무 많았고 알아본 가게도 문 닫았습니다 ㅠㅠ 그래서 우선적으로 배를 채우기 위해 사람들이 줄 서 있는 타코야끼 집으로 이동했습니다. 최근 먹은 음식 중에서 가장 뜨거웠습니다. 맛은 나쁘지 않았지만, 느끼한 감이 없지 않았습니다. 전반적으로 일본 음식의 간이 좀 쎈편인 것 같다는 생각이 들었습니다.(개인 견해) 그 와중에 맥날 햄버거도 짰습니다. 진짜 온몸이 소금으로 버무려지는거 같다는 생각이 들었습니다... 그래도 음료수가 있었기에 느끼함을 없애주었고 맛있게 먹었던 것 같습니다 ! 햄버거를 다 먹고 시..

일상/여행 2023.01.02

일본여행 2022.12.31 2일차 우에노(Ueno), 긴자(Ginza), 신오쿠보

오늘은 숙소에서 일어나자마자 우에노역에서 식사 후 공원에서 산책을 하였습니다. 거리를 서성이다 보니 약간 시장도 있으면서 술집, 밥집도 찾기 쉬워서 정말 좋았습니다. 다시 봐도 건물이 정교한게 너무 이쁘네요. 주변에 쓰레기 하나 없고 깔끔해서 보기 좋았던 것 같습니다.! 생각보다 너무 맛있었습니다. 신선하고 가격도 되게 괜찮았던 것 같습니다. 웨이팅은 3-40분 정도 기다렸던 것 같습니다. 기다린 보람이 정말 있었던 식당인 것 같습니다. 초밥마다 가격이 가지각색인데, 비싼 것도 먹고 저렴한 것도 골고루 먹었습니다. 정말 회전 초밥 집에서 이렇게 배 터지게 먹은 적이 처음이었습니다. 무엇보다 튀김류가 맛있었습니다. 하나도 안 느끼하고 담백한 맛이 느껴졌습니다. 웨이팅 기다리면서 순번표를 받기에, 시간이 남..

일상/여행 2023.01.02

일본 여행 2022.12.30 1일차 신주쿠(Shinjuku), 타카다노바바(Takadanobaba)

현재 일본에서 친구들과 함께 추억을 쌓고 있습니다. 그래서 즉석으로 저의 생각을 기록하기 위해 포스팅하려고 합니다.(사실 나중 가면 귀찮아서 안 할까 봐 작성..) 저희는 오늘 아침 7시 50분 비행기를 타기 위해 새벽 4시 30분에 일어나서 준비하고 5시에 청라에서 나와서 인천공항으로 갔습니다. 정말 아침부터 너무 힘들었습니다. 5시 50분쯤 도착했는데, 사람들이 너무 많았고 줄도 엄청 길었습니다. (해외여행 처음 가시는 분들은 참고하시면 좋습니다. (최소 1시간 반 ~ 2시간 전에는 공항에 도착해야 안전하게 비행기를 탈 수 있습니다.)). 일본 입국 절차가 정말 까다로워서 힘들었습니다. 백신접종증명서, 영문확인서(백신 3차 안 맞은 사람만 해당), 여권, 민증은 필수로 챙겨야 합니다.! 우여곡절 끝에..

일상/여행 2022.12.30

2022 12월 회고록

우여곡절 끝에 2022년이 지나갔네요. 이번에 방향성 잡고 친구들과 정말 열심히 공부했는데, 눈 깜짝할 사이에 1년이 지나갔다는게 안 믿기네요. 아무래도 시기가 시기인지라 신경 써야 할 부분이 한두 개가 아닌 것 같습니다. 이번에 우테코 붙은 친구를 통해 고려해야 할 부분이 생겼습니다. 항상 머릿속에는 마음에 담아두고 있지만, 실천은 하지 못했던 요소입니다. 코드를 작성할 때 클린 코드를 항상 머릿속에 담아두고, 가독성 있는 코드를 작성하기 위해 힘써야 할 것 같습니다. 그리고, 4학년 때 졸업 작품을 만들기 위해 백엔드적 역량을 더 길러야 할 것 같습니다. 저의 역량을 드러낼 수 있는 실속 있는 개인 프로젝트도 만들어보고 같이 공부하는 친구와 함께 서로 피드백해주고 자극을 주면서 발전해 나가도록 노력해..

일상/회고록 2022.12.28