본문 바로가기

전체 글

(51)
Hyperledger - 모듈화 Hyperledger Fabirc 은 *모듈식 아키텍처를 갖도록 설계 되어 있습니다. *LDAP 또는 OpenID Connect와 같은 플러그형 ID관리 프로토콜, 키 관리 프로토콜 등 여러가지가 포함 됩니다. Fabric 의 모듈식 구성요소 1) 플러그형 주문 서비스는 트랜잭션 순서에 대한 합의를 설정하고 이를 블록에 보냅니다. 2) 플러그형 멤버십 서비스 제공자는 "네트워크의 엔티티 - 암호화된 ID" 연동을 담당합니다. 3) 선택적 P2P *가십 서비스는 다른 피어에게 블록을 공유 합니다. 4) Chaincode는 격리를 위해 Docker 내에서 실행 됩니다. 표준 프로그래밍 언어들로 작성 가능 하지만 (Go) 원장 상태에 직접 Access 할 수는 없습니다. 5) 원장은 다양한 DBMS를 지원하도..
Lv3 - [이중우선순위큐] [문제 설명] - I 수 -> 큐에 숫자 대입 - D 1 -> 큐에서 최댓값 삭제 - D -1 -> 큐에서 최솟값 삭제 - 위 세 명령어가 주어진 operations 배열. - 모든 연산을 처리한 후 1) 큐가 비었으면 [0,0] 2) 큐에 값이 존재 하면 [최댓값, 최솟값] 리턴 [문제 풀이] - 최소큐, 최대큐 두개 만들어서 인서트는 둘다 하고 뺄때는 각자 뺀다. - 최대큐를 위한 꼼수로 부호 반대로 해서 만듬. - 마지막에 둘의 교집합을 구하고 소트해서 출력 - 이를 위해 필요한 1) list(set(list1) & set(list2)) -->교집합 2) list(set(list1) | set(list2)) --> 합집합 3) list(set(list1) - set(list2)) --> 차집합 - ..
Lv3 - [디스크 컨트롤러] [문제 설명] - [ [요청 시점, 소요 시간] ] 의 2차원 배열로 주어지는 jobs 배열이 있다. - 평균 시간이 적어지도록 처리 순서를 정하고 min(평균시간)을 구해라. [문제 풀이] - 프로세스 처리 중에 들어온 프로세스라면 소요시간이 적은순으로 먼저 처리. - 프로세스가 쉬는 중이면 요청 시점에 따라 처리. - 요청 시점이 같을 경우 소요시간이 적은것 부터 처리.
Lv2 [더 맵게] [문제 설명] - 맵기가 들어있는 배열 Scoville - 최소 맵기 k - Scoville 의 최소값이 k 이상이도록 주어진 식에 따라 섞어라. [문제 풀이] - Heap 공부 - 최소 힙으로 정리해서 두개 빼고 계산후 다시 넣기. - 파이썬 heap 라이브러리가 있긴 한데 일단 내가 만들어 보기 [minHeap -수제작] class MinHeap(): def __init__(self): self.queue = [] def insert(self,num): self.queue.append(num) lastIndex = len(self.queue)-1 while lastIndex>=0: compareIndex = lastIndex // 2 if compareIndex >= 0 and self.queue[l..
Lv2 - 프린터 [문제 설명] - 중요도가 높은 순서대로 먼저 인식하는 프린터가 있다. 1) 대기 목록에서 가장 앞에 있는 문서를 꺼내옴. 2) 남은 대기 목록에서 꺼내온 문서보다 중요도가 높은게 하나라도 있으면 꺼내온걸 대기 가장 마지막으로 보냄. 3) 그렇지 않으면 꺼내온거 인쇄. - 중요도 배열 priorities 배열 - 내가 인쇄 요청한 문서 location 인덱스 - 위 두 가지가 주어질 때 내가 인쇄할 문서가 몇번째로 인쇄 되는지 리턴. [문제 해결] - 인덱스 저장배열 idxArr - 값 저장배열 valArr - 위 두 배열 만들어서 각각 저장 후 결과 배열인 resultArr을 만든다. 이 배열에는 중요한 순으로 소팅한 결과가 들어감. - 반복문에서 뽑은 값이 배열 내 최대 값일경우 i 를 하나 증가 시..
Lv1 - 2016 [문제설명] - 2016년 1월 1일은 금요일이다. - 2016년 a월 b일은 무슨요일인지 리턴하는 solution을 작성. - SUN,MON,TUE,WED,THU,FRI,SAT 리턴은 이거다. [내 풀이] - 1달에 30,29(윤년임),31 있으니까 이를 고려 해야함. - 그냥 노가다로 품. 다른 사람들도 대부분 비슷하고 그나마 덜 노가다 한듯. - 사전을 그냥 배열의 형태로 바꾸는게 더 좋을듯. 이게 직관적이긴 하다만 배열 자체의 인덱스로 a-1을 사용할 수 있으니까 배열이 더 나음.
Lv2 - 타겟넘버 [문제설명] - n개의 음이 아닌 정수가 있음. - 이 수를 적절히 빼서 타겟 넘버를 만들려고 한다. - [1,1,1,1,1] 로 3을 만들려면 총 5가지 방법이 나옴. - 사용할 수 있는 숫자가 담긴 배열 numbers ( 2개 이상 20개 이하) (각 1이상 50 이하의 자연수) - 타겟 넘버 target ( 1이상 1000이하) [내 풀이] - 조합.. 이려나..? - 일단 해볼까..? - dfs/bfs 랍니다 ㅋㅋ; 처음보는 단어들이고 ㅠㅠ 이제 처음 해봄. dfs 로 먼저 풀어보겠습니다. - dfs가.. 말이 깊이탐색이지 재귀! 임! - 재귀로 하나씩 더하고 빼고를 만드는거임. [연장공부] - N*M 크기의 얼음 틀. - 첫 번째 줄에 어름 틀의 세로와 가로길이 N, M 이 주어진다. - 두 번..
Lv1 - 실패율 [문제 설명] - 게임 시간을 늘려 난이도를 조절 하기로 함. - 실패율(스테이지에 도달 했으나 아직 클리어하지 못한 플레이어 수 / 스테이지 도달한 플레이어 수)을 작성해라. - 전체 스테이치 개수 N (1