분류 전체보기 720

[알고리즘] 이분탐색의 친구 Parametric search

Parametric Search 최적화 해법인 이분탐색을 결정문제로 바꾸어 푸는 기법. ex.) 고기를 200g잘라라 -> 고기가 200g보다 가벼운가? 무거운가? 의 결정문제로 바꿈.(예 아니오) 특정 값을 찾는게 아닌 오차 범위 내에서 가장 가까운 부등호 식으로 결과를 판별한다. 가능한 해의 영역이 연속적이어야 한다. (최솟값 결정문제 a가 만족한다면 a이상의 값은 모두 만족.) 예제 BOJ 1637 날카로운 눈 import sys input = sys.stdin.readline def get_sum(target): total = 0 for i in range(N): if target >= arr[i][0]: total += ((min(arr[i][1],target) - arr[i][0])//arr[..

[백준][Python] 1637 날카로운 눈

적 / 부. target이하의 값들의 합이 홀수냐? 짝수냐? import sys input = sys.stdin.readline def get_sum(target): total = 0 for i in range(N): if target >= arr[i][0]: total += ((min(arr[i][1],target) - arr[i][0])//arr[i][2]) + 1 return total N = int(input()) arr = [list(map(int, input().split())) for _ in range(N)] left = 0 right = 2147483648 while left < right: mid = (left + right)//2 if not get_sum(mid)&1: left = ..

[백준][Python] 6568 귀도 반 로썸은 크리스마스날 심심하다고 파이썬을 만들었다.

비트문제라기엔 EOF출력이 더 어려웠다.. import sys input = sys.stdin.readline while True: memory = [0 for _ in range(32)] cal = 0 pc = 0 for i in range(32): try: memory[i] = int(input().rstrip(),2) except EOFError: exit() while True: adress = memory[pc] cmd = adress//32 value = adress%32 pc = (pc + 1)%32 if cmd == 0: memory[value] = cal elif cmd == 1: cal = memory[value] elif cmd == 2: if not cal: pc = value el..

[React] React를 다루는 기술 4장 이벤트 핸들링

4. 이벤트 핸들링 사용자가 웹 브라우저에서 DOM요소들과 상호작용하는 것을 event라 함. 1. 리액트의 이벤트 시스템 HTML 이벤트와 인터페이스가 동일하다. const Say = () => { const [message, setMessage] = useState(""); const onClickEnter = () => setMessage("안녕하세요"); const onClickLeave = () => setMessage("안녕히 가세요!"); const [color, setColor] = useState("black"); return ( 입장 퇴장 주의점 이벤트는 카멜케이스로 작성한다.(onclick -> onClick) 이벤트에 실행할 JS 코드가 아니라 함수형태의 값을 전달. HTML은 큰따..

frontend/React 2021.09.09

[JS] 자바 스크립트 30개 미니 프로젝트 만들기 -9. Dev_Tools_Domination

09_Dev_Tools_Domination 1. Regular console.log("Hello"); 2. Interpolated console.log("Hello I am a %s string!", "?"); %s로 들어감 3. Styled console.log( "%c I am some great text", "font-size: 50px; background:red; text-shadow: 10px 10px 0 blue" ); 스타일 적용됨 4. Warning, Error console.warn("OH NOOO"); console.error("Shit"); 5. Info console.info("crocodiles eat 3-4 people per year"); 6. Testing const p =..

frontend/JavaScript 2021.09.09

[브라우저] 브라우저는 어떻게 동작하는가? 1- 파싱과 돔트리 구축

브라우저는 어떻게 동작하는가? 1편 파싱과 돔트리 구축 브라우저의 주요기능은 사용자가 선택한 자원을 서버에 요청하고 브라우저에 표시하는 것. 자원은 보통 HTML. 자원의 주소는 URI(Uniform Resource Identifier)에 의해 결정됨. 브라우저는 웹 표준화 기구가 정한 HTML과 CSS 명세에 따라 HTML파일을 해석해서 표시한다. 브라우저의 UI요소 URI 주소 표시 줄 이전, 다음 버튼 북마크 새로고침, 현재문서 로드를 중단하는 정지버튼 홈 버튼 브라우저의 기본 구조 UI : 주소 표시줄, 이전/다음버튼.. 등등 요청한 페이지를 보여주는 창을 제외한 나머지 모든 부분 브라우저 엔진 : UI와 렌더링 엔진사이 동작을 control 렌더링 엔진 : 요청한 컨텐츠를 표시. 보통 HTML요..

[백준][Python] 1507 궁금한 민호

플로이드 워셜. 최솟값이 최솟값끼리의 합이면 0 (direct한 경로가 아니라는 뜻) 최솟값끼리의 합보다 주어진 값이 크면? 최솟값이 아니라는 뜻. -1 출력. import sys input = sys.stdin.readline n = int(input()) matrix = [list(map(int, input().split())) for _ in range(n)] edge = [[1] * n for _ in range(n)] result = 0 for k in range(n): for i in range(n): for j in range(n): if i == j or j == k or i == k: continue # 합으로 표현되면 취하지 않는다.(그게 경로라는뜻) if matrix[i][j] == ..