전체 글
-
[DFS/BFS] 네트워크코딩 테스트/프로그래머스 2023. 3. 30. 15:18
문제 설명 https://school.programmers.co.kr/learn/courses/30/lessons/43162 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 풀이 연결된 노드들을 확인한 후 0번 노드부터 BFS 방식으로 탐색하면서 한번에 연결지을 수 있는 것들 모두 연결 0번 노드로부터의 탐색이 끝나면 1,2,3,4,5,...n-1번 노드 순서대로 탐색하는데 이미 탐색했던 거라면 continue 탐색하지 않았더라면 새로운 네트워크의 발견이므로 answer+1 소스 코드 from collections import deque def sol..
-
[연습 문제] 최고의 집합코딩 테스트/프로그래머스 2023. 3. 29. 22:01
문제 설명 https://school.programmers.co.kr/learn/courses/30/lessons/12938 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 풀이 주어진 S라는 숫자에 대해 n가지로 표현 한 뒤 각각의 표현들에 대해 곱한 값이 최댓값인걸 찾는 문제 중간 값에서 최댓값이 나온다는 걸 알게 됨 S를 n으로 나눈 몫을 a, 나머지를 b라고 선언 a가 n개가 있고, 그 중에서 b개 만큼 +1 을 하면 그 집합이 최댓값이 됨 s=9,n=2 이면 a=4,b=1 => 2,2,2,2 => 3,2,2,2 => 24 소스 코드 def s..
-
[힙] 이중 우선순위 큐코딩 테스트/프로그래머스 2023. 3. 29. 21:03
문제 설명 https://school.programmers.co.kr/learn/courses/30/lessons/42628 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 풀이 operation에 따라 삽입/ 최댓값 pop/ 최솟값 pop을 하는 문제 각 op에 따라 split로 나눠 준 뒤 각 연산을 수행 우선순위 큐로 짬 heapq 는 push와 동시에 정렬을 수행함 (기본적으로 최대 정렬-최솟값이 맨 앞으로) 파이썬에서 제공하는 heapq의 기본은 최소 힙을 기반으로 하고 있어서 pop을 할 시 최솟값이 나옴 최댓값은 큐의 맨 뒤에 있으므로 D..
-
[동적 계획법] 정수 삼각형코딩 테스트/프로그래머스 2023. 3. 29. 20:07
문제 설명 https://school.programmers.co.kr/learn/courses/30/lessons/43105 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 풀이 다이나믹 프로그래밍 문제 점화식: dp(i,j) = dp(i,j) + max( dp(i-1,j) , dp(i-1,j-1) ) i,j의 기준을 아랫줄로 잡고 윗 줄에서 내려온 두 값 중 최댓값을 현재 위치에 더함 소스 코드(python) def solution(triangle): answer = 0 n = len(triangle) for i in range(n): #밑에서 점화..
-
MetaMask Docs (Methods &&Events)블록체인 2023. 3. 24. 17:37
MetaMask Docs 1. ethereum.isConnected() ethereum.isConnected(): boolean; /** If the provider is not connected, the page will have to be reloaded in order for connection to be re-established. Please see the connect and disconnect events for more information. */ 2. ethereum.request(args) interface RequestArguments { method: string; params?: unknown[] | object; //The params and return value will va..
-
[React] 데이터를 실시간으로 갱신하기(useSWR, setInterval,useQuery)FrontEnd/React.js 2023. 3. 19. 02:21
setInterval() 과 useSWR() 은 모두 데이터를 실시간으로 가져오는 방법이지만, 동작 방식과 목적이 다르다. setInterval() setInterval()은 매번 데이터를 가져오기 위해 API에 요청을 보내는 방식이다. 즉, 호출 횟수가 늘어날수록 서버에 부하가 증가한다. 또한 호출 간격을 지정하더라도 정확히 유지하지 못할 수 있고, 데이터를 가져오다 문제가 발생하면 예외가 발생한다. useSWR() useSWR은 데이터를 캐싱하고, 필요에 따라 API에 요청을 보내 데이터를 가져오는 방식이다. 이 방법은 API 요청 횟수가 줄어들고, 가져온 데이터를 캐싱하여 다음 요청시 캐시된 데이터를 리턴함. 호출 실패시에 적절한 에러 처리 가능함 setInterval() && useSWR() =>..
-
[블록체인] 용어 정리 (ing)블록체인 2023. 3. 13. 17:40
Web 3.0 탈중앙화 각 개인이 거래가 일어 날때마다 네트워크 모두가 기록을 하는 방법 이런 거래내역을 서로 서로 체인처럼 연결해서 장부처럼 가지고 있는 것이 블록체인 블록체인 분산 데이터베이스 같은 개념 데이터를 누구라도 임의로 수정x, 누구나 변경의 결과 확인 가능한 기술 탈중앙화로, 블록체인에 참여한 모든 사람이 거래 기록을 공유하고 위조를 막음 은행(중앙화)이 입금 기록을 지울 순 있지만, 블록체인(탈중앙화)은 네트워크에 참여하는 모든 사람이 기록을 관리 블록: 거래내역 등의 데이터가 저장되고 묶은 것 체인: 하나의 블록을 다음 블록으로 시간 순서에 따라 연결한 것. (해시 함수, 이전 해시 함수, 데이터) 비트코인 vs 이더리움 비트코인: 금융에 특화되어 화폐 기능을 하는데 초점 맞춘 플랫품 ..
-
[블록체인] Ether.js provider, signer블록체인 2023. 3. 13. 16:04
provider: An abstraction of a connection to the Ethereum network (ie alchemy, infura, etc). In other words, which is the service provider that our application is using to connect to the Ethereum network. signer: An abstraction of an Ethereum Account. This is the object which we can use to sign and send transactions.