본문 바로가기
반응형

분류 전체보기154

배달 [프로그래머스] 문제 풀이 설명 그래프 보자마자 음 이건 dfs 문제군 이라고 감이 왔다. 확실히 예전보다는 문제를 많이 풀어봐서 감을 익힌듯 하다. 그래프 그림을 보면 주의 할 점이 보이는데, cycle 이 존재한다는 점이다. 연결된 node를 따라갈때, recursive 하게 함수를 짜게 되는데, 끝이 없다면 stack overflow로 에러가 날수 있다. 그래서 visited 라는 배열을 만들어 이전에 방문한 node에 대해 체크할 수 있도록 구현했다. 우선 road 매트릭스를 만들어 준다. 매트릭스 mat[i][j] 는 i번째 마을과 j 번째 마을의 road 길이로 세팅해준다. 각 마을 별로 방문했는지 여부를 알 수 있게 visited 리스트 역시 만들어준다. mat = [] for i in range(N): #.. 2022. 1. 29.
네이버 댓글, 다음 댓글 이진분류 해보기 예전에 친구와 얘기를 나누던 중, 다음 기사와 네이버 기사의 댓글 온도차(?) 가 크다는 걸 발견했었다. 문제가 됐던 기사 인데, 네이버와 다음의 댓글은 각각 이랬다. https://news.naver.com/main/read.naver?m_view=1&mode=LSD&mid=sec&sid1=100&oid=032&aid=0003083419 문 대통령, 북한 풍산개 '곰이'가 낳은 강아지들 모습 공개 [경향신문] 문재인 대통령이 3일 사회관계망서비스(SNS)에 풍산개 ‘곰이’가 낳은 새끼 7마리의 모습을 공개했다. ‘곰이’는 2018년 남북정상회담 당시 김정은 북한 국무위원장이 문 대통령에게 news.naver.com https://news.v.daum.net/v/20210703121619046 문 대통령.. 2022. 1. 23.
mousedown 과 checkbox 별거 아닌 거 같지만 정리하면 좋을 것 같아서 남겨본다. 상황은 이렇다. html table 의 row를 클릭하면 해당 row의 존재하는 checkbox가 클릭되는 경우를 javascript+jquery로 구현하고자 했다. 간단한 table 과 js 함수를 구성해보자 check column1 column2 hoonzi blog 해당 html의 결과는 이렇게 보인다. 여기서 나는 checkbox 이외의 hoonzi 혹은 blog를 클릭하더라도 같은 row상에 존재하는 checkbox가 체크 되었으면 한다. js 이벤트 함수를 짜 준다. $("#table tbody tr").on("mousedown", function() { let checkbox = $(this).find("input[type='check.. 2022. 1. 18.
로그인 로직 구현해보기 (jsp, java, tomcat) 정리 프로젝트중 로그인 부분을 구현해야 하는 것이 있었다. 당시 로그인 부분보다 더 급한 부분을 먼저 처리 하느라 로그인의 경우 보안적으로 무방비한 상태였다. 유저의 id, password를 받아 db 정보와 대조해본 뒤, 맞으면 넘어가고 틀리면 다시 로그인 페이지로 넘기는 단순한 로직인데 이때 id, password가 전혀 암호화가 이뤄지지 않은 상태로 네트워크 상을 돌아다니게 된다. 개발자 친구는 적어도 md5로 암호화 한뒤 보내는게 어떻겠냐고 제안할 정도였다. 그래서 마음 한켠으로 ‘아 언젠간 고쳐야지...’ 같이 생각만 하고 있다가 이번에 고치게 됐는데, 이거에 대해 간략히 정리한다. 지금 만들고 있는 웹은 java + jsp + tomcat으로 흔히들 사용하는 spring 이 아니라서 java,.. 2022. 1. 15.
Linked List Random Node [leetcode] 문제 Given a singly linked list, return a random node's value from the linked list. Each node must have the same probability of being chosen. Implement the Solution class: Solution(ListNode head) Initializes the object with the integer array nums. int getRandom() Chooses a node randomly from the list and returns its value. All the nodes of the list should be equally likely to be choosen. Example 1.. 2022. 1. 7.
Car Pooling [leetcode] 문제 1094. Car Pooling Medium Example 1: Input: trips = [[2,1,5],[3,3,7]], capacity = 4 Output: false Example 2: Input: trips = [[2,1,5],[3,3,7]], capacity = 5 Output: true Constraints: 1 2022. 1. 7.
거리두기 확인하기 [프로그래머스] 문제 풀이 문제 풀이 자체가 별로 없다. P의 위치를 좌표 평면에서 x=0, y=0 이라고 했을때 맨하튼 거리가 2 이내 인 곳은 총 12 군데로 west ⇒ [-2,0] , [-1,0] southwest ⇒ [-1,-1] south ⇒ [0, -2] , [0, -1] southeast ⇒ [+1, -1] east ⇒ [+2,0], [+1,0] northeast ⇒ [+1,+1] north ⇒ [0,+2], [0+1] northwest ⇒ [-1,+1] 이렇게 총 12개의 공간을 확인해야 한다. 1, 3, 5, 7 번의 공간의 경우 맨하튼 거리가 1인 경우 P가 존재한다면 무조건 False 맨하튼 거리가 2인 경우 P가 존재한다면 중간 공간의 값이 X가 아니라면 무조건 False 2, 4, 6, 8 번의.. 2021. 11. 29.
다음 뉴스 댓글 가져오기 예전에 네이버 댓글을 모았었는데~ 네이버 기사 댓글 가져오기 네이버 기사 댓글 가져오기 네이버 기사 댓글 가져오기 들어가기 전 네이버의 robots.txt 에 대해 먼저 숙지하자. 사용 언어 및 모듈 - python 3.7 - request = request 요청을 보내 html 값을 가져오기 .. hoonzi-text.tistory.com 다음 댓글도 모아서 뭔갈 하면 좋을 거 같아서 이번엔 다음 댓글을 모아봤다. 이번에도 역시 셀레니움은 쓰지 않고 오직 request만 조져서 가져와볼 생각이다. 우선 필요한 모듈들을 불러와 보자. import pandas as pd # 가져온 데이터를 테이블(rdbs) 형식으로 표기 및 저장 from bs4 import BeautifulSoup # html 을 파싱하.. 2021. 11. 26.
땅따먹기 [프로그래머스] 문제 풀이 어... 처음에는 dp처럼 이전 계산 결과를 다 저장한다음에 마지막에 경로값을 쓰는? 문제인줄 알았으나 읽다보다 더 쉬운문제였다. 마지막에 계산 결과중 제일 큰값을 출력하면 되는 문제다. 그렇다면 이전 결과중에 제일 큰값 들만 저장하면서 진행하고, 마지막 결과값중에 제일 큰값을 찾아내면 된다는 얘기다. row의 각 값은 이전 값들과의 계산중 가장 큰값만을 저장하면 된다. [1, 2, 3, 5] [5, 6, 7, 8] → 이 단계에서 계산을 보면 (자신의 index와 같은 index는 피해서) 5 → [5+2, 5+3, 5+5] → max=10 6 → [6+1, 6+3, 6+5] → max=11 7 → [7+1, 7+2, 7+5] → max=12 8 → [8+1, 8+2, 8+3] → max=1.. 2021. 11. 26.
반응형