본문 바로가기

CS35

바이너리 인덱스 트리 알고리즘 (펜윅 트리) 백준2042 바이너리 인덱스 트리 알고리즘 (Binary Indexed Tree) i&-i 앤드연산을 이용해 누적합을 계산하는 알고리즘이다. 1&-1 : 1 2&-2 : 2 3&-3 : 1 4&-4 : 4 ... 임을 이용한다. 이렇게 나오는 원리를 알아보면 아래와 같다. i i 2진수 2의 보수 i&-i result 1 00000001 11111111 00000001 1 2 00000010 11111110 00000010 2 3 00000011 11111101 00000001 1 4 00000100 11111100 00000100 4 1 2 1 4 1 8 1 16 1 32 ... 이렇게 나오는 원리를 이용해 각 인덱스별로 값 1개의 합, 값 2개의 합, 값 1개의 합, 값 4개의 합 구간합을 미리 구해놓는다. 백준.. 2021. 11. 22.
Video call (feat.WebRTC) webrtc 미디어 서버 종류 출처 : antmedia.io/5-reasons-to-prefer-ant-media-server-over-sfu/ 5 Reasons to Prefer Ant Media Server over SFU - Ant Media 5 Reasons to Prefer Ant Media Server over SFU, we will tell the advantages of Ant Media Server over an SFU. Read More about Ant Media Server antmedia.io 개발 1단계 : 시그널 서버 (socket) 클라이언트간의 정보 교환을 위한 프로세스 - 통신을 열고 닫는데 사용되는 세션 컨트롤 메세지 - 에러 메세지 - 코덱 설정, 대역폭, 미디어 타입.. 2021. 2. 8.
Operating System Process/Thread CPU는 오직 Memory하고만 이야기할 수 있음 Process는 ID가 보임 Thread는 PS 안에서 돌아서 ID가 안보임 Create(외부 lib 할당, 가상메모리 끌어와서 ) Ready(CPU 할당받기 전 준비단계) Run(CPU 할당) Wait(CPU 뺐김) Resume(CPU 다시 할당하면 다시 Ready 상태로 가서 기다림) Destroy(할일 다 끝나면) ​ Memory에서 읽는 시간보다 File에서 읽는 시간이 훨씬 오래걸림 (달까지의 거리라고 생각) Deadlock 만들어지는 조건 : 두개 이상의 task가 두개 이상의 resource를 공유할 때 만들어짐 (할당과 기다림이 사이클을 이룰 때) 뮤텍스 : 한 자원을 한번에 한 task만 사용하도록 만든 장치 (.. 2019. 6. 7.
Data In Digital 프로그램이 커지면 실행파일을 작게 만들고 lib 등을 따로 뺌 윈도우 확장자 -> .dll .exe .ini .bmp 리눅스 -> 확장자 따로 없음 .a(archive : 정적 라이브러리), .so(shared object : 동적 라이브러리) Data : 문자, 숫자, 멀티미디어(사운드, 이미지), 문서 등을 포함 Character String “hello” -> hello□(널문자: 스트링임을 구분하기 위해 붙여서 저장) 6바이트로 저장 또는 String str = “hello” data[5] = hello length : 5 (ex: str.length 할때 null문자가 나올때까지 데이터를 읽어서 찾음) End of string : String에서 7비트 찍다가 이 문자 나오면 \n : nextl.. 2019. 5. 17.