본문 바로가기

전체 글50

[프로그래머스 Lv.1 / Java] 폰켓몬 [문제] programmers.co.kr/learn/courses/30/lessons/1845 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr [문제 분석] 1. 박사님의 폰켓몬이 N마리라면, 내가 가져갈 수 있는 폰켓몬의 수는 N/2마리이다. 2. N마리중에는 같은 종류의 폰켓몬이 존재할 수 있다. 3. 나는 최대한 다양한 종류의 폰켓몬을 가져가고 싶다. 4. 이 때, 나는 최대 몇 종류의 폰켓몬을 가져갈 수 있을까? [풀이] 배열, map, set 세 가지 방법으로 풀이를 해봤다. 코드는 조금씩 다르지만 원리는 비슷비슷하다. ● 배열을 이용한 풀이 im.. 2022. 9. 3.
[프로그래머스 Lv.1 / Java] 같은 숫자는 싫어 [문제] 배열 arr가 주어집니다. 배열 arr의 각 원소는 숫자 0부터 9까지로 이루어져 있습니다. 이때, 배열 arr에서 연속적으로 나타나는 숫자는 하나만 남기고 전부 제거하려고 합니다. 단, 제거된 후 남은 수들을 반환할 때는 배열 arr의 원소들의 순서를 유지해야 합니다. 예를 들면, arr = [1, 1, 3, 3, 0, 1, 1] 이면 [1, 3, 0, 1] 을 return 합니다. arr = [4, 4, 4, 3, 3] 이면 [4, 3] 을 return 합니다. 배열 arr에서 연속적으로 나타나는 숫자는 제거하고 남은 수들을 return 하는 solution 함수를 완성해 주세요. 제한사항 배열 arr의 크기 : 1,000,000 이하의 자연수 배열 arr의 원소의 크기 : 0보다 크거나 같.. 2022. 8. 23.
[GIT] github 보안 취약점 알림 해결방법 [We found potential security vulnerabilities in your dependencies 문제 해결하기] 몇 달 전부터 github에서 같은 내용의 메일이 몇 개 날라왔다. 처음 메일이 왔을 때 바로 해결했어야 했는데.. 바쁘다는 핑계로 모른 척 하고 있다가 드디어 해결해보려고 한다. 메일의 내용은 아래와 같다. 그리고 깃헙에서 해당 리포지포리를 확인해보면 아래와 같은 경고가 떠있는 것을 확인할 수 있다. 즉, 너가 쓰는 라이브러리에서 취약점이 발견되었으니, 업데이트해! 라고 알려주는 내용이다. See Dependabot alerts 버튼을 클릭해보면 이렇게 어떤 항목들에서 보안이 취약한지 목록으로 쭉 보여준다. (검색해보니 보안 취약 문제가 나타나는 원인들은 다 다른데, 그.. 2022. 7. 30.
[2022회고] 2022년 상반기 정리, 1일 1커밋 5개월 후기 이번에도 일기 쓰듯 써 내려가는 2022년 상반기 회고! 2022년도 벌써 반이 지나갔다. 나는 그동안 얼마나 열심히 살았는가. 결론을 먼저 말하자면 목표했던 취업에 성공했다. 2월에 한창 포트폴리오를 작성하고 이력서를 냈던 적이 있는데 연락이 거의 오지 않아 문제점을 파악하고 보완하기 위해 많은 노력을 했던 것 같다. 먼저 포트폴리오가 부족한가 싶어 개인 프로젝트를 진행하였고, 이력서 또한 전면 수정하였다. 2월 이후 4월에 다시 취업에 도전하였는데, 2개월 차이인데도 불구하고 처음 만들었던 포트폴리오와 이력서가 개판이었다는 것을 느낄 수 있었다. 프로젝트를 하나 더 해서가 아니라, 내용도 양식도 모든 게 다 수준 이하였다ㅎ 스스로 판단할 수 있을 정도로 개판이었으나 '나 좀 발전했나 봐!'라고 느낄 .. 2022. 6. 26.
[스프링] 회원가입, 비밀번호 찾기 이메일 인증 구현하기 개발환경 자바11, 스프링 프레임워크, 메이븐, Mybatis, MySQL, 인텔리제이 현재 개인 프로젝트를 진행 중에 있는데, 구현해본적이 없는 기능들 위주로 진행해보기로 했다. 그 중 하나가 이메일 전송 기능! 회원가입 시 이메일 인증을 해보려고 한다.(비밀번호 찾기도 동일한 방식으로 진행할 수 있다.) 이메일 인증에는 두 가지 경우가 있다. 1. 인증번호를 받아 인증번호 입력으로 이메일 인증하기. 2. 인증링크를 받아 링크 클릭 시 인증 완료하기. 두 가지 경우 중 나는 후자인 링크로 인증하는 방법을 구현했다. 또한, 구글을 이용한 이메일 인증을 했다. (참고로, 기본적인 DTO(또는 VO)나 서비스, 컨트롤러 등은 다 준비되어 있다는 가정하에 진행합니다. 회원 테이블에는 본인이 설계한 아이디, 비.. 2022. 3. 29.
[ERROR] java.lang.IllegalArgumentException: No enum constant 에러 구글 로그인을 구현하다 거의 다와서 에러가 발생했다. 사실 해결은 했지만, 이 에러는 이동욱님의 '스프링부트로 웹 서비스 출시하기' 라는 서적의 블로그 글을 읽으며 따라해보다가 발생한 에러이다. 이 프로젝트를 따라 만들면서 mustache, jpa, tdd등을 처음 접했기 때문에 해당 지식이 엄청 얕다. 그렇게 때문에 이 글은 에러에 대한 물음표를 느낌표로 바꾸지는 못한다. 공부를 더 해서 얕게 설명한 부분들을 더 이해가 가기 쉽도록 수정할 예정이다. 지금은 나중에 또 이런 에러가 발생했을 때 헤메지 않기 위해 기록을 남겨두려고 한다. 1. 의문점 (에러) 1. 구글로그인을 구현하고부터 잘되던 글 등록, 수정, 삭제가 불가능해졌다. 에러 내용을 보니 권한접근 에러인 403에러가 떴고, 콘솔엔 처음보는 에.. 2022. 3. 6.