분류 전체보기 720

[JavaScript] JS의 비동기처리.

JS의 비동기 처리방식 동기 / 비동기 처리 동기(Syncronous)는 먼저 시작한 작업이 끝날 때 까지 다른 작업을 할 수 없다. 비동기(Asyncronous)는 동시에 여러가지 작업을 처리하며 기다리는 과정에서 다른 함수 호출이 가능하다. 비동기 처리의 예 다음과 같은 작업들은 주로 비동기적으로 처리하게 된다. Ajax Web API요청 : 화면을 렌더링해야하는데 서버쪽에서 응답을 해주기까지 마냥 대기할 수 없다. 비동기적으로 처리한다. Ajax function getData() { let data; $.ajax({ type: 'post', url: 'https://devlibrary00108.tistory.com/', data: { seungjoo:zzang, }, s..

frontend/JavaScript 2021.08.17

[백준][Python] 13707 합분해 2

중복순열 문제이며 N개를 K칸에 분배하는 문제이다. K칸에서 N-1개를 분배하는 경우에서 1개를 더 분배하는 모든 경우의 수(0인칸이 남는 경우의수가 배제됨) N개를 K-1칸에 분배 하는 경우의 수에 0인칸을 하나씩 붙혀주는 경우의 수(위에서 배제된 경우의 수가 충족됨) 의 합을 구하는 문제. import sys input = sys.stdin.readline N, K = map(int, input().split()) dp = [[0]*5001 for _ in range(5001)] # 결국 숫자1 N개를 K개의 칸에 분배하는 경우의 수. # N-1개를 K개에 분배하는 경우의수에 1씩 더하는 경우 + N개를 K-1개에 분배하는 경우의수에서 0을 가지는 한칸을 더하는경우, for i in range(1,N..

[백준][Python] 20207 달력

늘 숫자가 있고 없고의 경계를 기준으로 값을 구할때 365일째에서 0으로 넘어가는 구간이 없기 때문에 계산이 끝나지 않을 경우가 많은데 이런경우 늘 조심.. 마지막에 한번 정산 해주거나 배열 뒤에 0값을 하나 넣어서 마무리 시켜줘야함.. import sys input = sys.stdin.readline N = int(input()) sch = [0]*(366) for _ in range(N): a, b = map(int, input().split()) for i in range(a,b+1): sch[i] += 1 area = 0 max_h = 0 for i in range(1,366): if not sch[i-1] and sch[i]: left = i if max_h < sch[i]: max_h = s..

[백준][Python] 16139 컴퓨터 인간 상호작용

둘다 같은코든데 아래꺼만 100점. 차이점은 가로로 저장하느냐 세로로 저장하느냐 차이. 가로가 더 빠른가보다. import sys input = sys.stdin.readline print = sys.stdout.write s = input().rstrip() n = len(s) sub_set = [[0 for _ in range(26)] for _ in range(n)] for i in range(n): for j in range(i,n): sub_set[j][ord(s[i])-97] += 1 q = int(input()) for _ in range(q): alp, l, r = input().split() l,r = int(l), int(r) l_value = sub_set[l-1][ord(alp)-9..

[백준][Python] 14676 영우는 사기꾼

위상정렬 + 구현 level있는 빌딩을 지을수는 없지만 building이 있는데 레벨이 있을 수도 있음(하위건물이 파괴되어) import sys input = sys.stdin.readline N, M, K = map(int,input().split()) graph = {i: [] for i in range(1,N+1)} level = {i: 0 for i in range(1,N+1)} built = {i:0 for i in range(1,N+1)} for _ in range(M): a, b = map(int, input().split()) graph[a] += [b] level[b] += 1 for _ in range(K): command, building = map(int, input().split(..

[백준][Python] 1305 광고

KMP에서 실패함수를 만드는 느낌. 중복 매칭 알고리즘을 짠다. import sys input = sys.stdin.readline L = int(input()) # 광고판 길이 string = input().rstrip() # 광고판 문자열 string_length = len(string) # 실패함수 ( KMP 패턴 부분 일치 테이블 만들기) pattern_table = [0 for _ in range(string_length)] count = 0 for idx in range(1, string_length): while count > 0 and string[idx]!=string[count]: count = pattern_table[count-1] if string[idx]==string[count..

[백준][Python] 16988 바둑2

문제 이름만 봐도 바킹독님이 만드신 문제.. 구현문제로 자주나오는 유형. 삼성 기출의 연구소 같은 느낌으로 막아놓을 벽을 몇개 정하고 BFS로 막힌 영역을 세는 느낌. 연구소 시리즈를 풀며 연습할 필요성을 느꼈다. 벽을 고르는 조합도 comb를 쓰지않고 함수를 구현하는 방법도 고려할 수 있다. import sys input = sys.stdin.readline from collections import deque from itertools import combinations def BFS(x,y,visited): queue = deque() visited[x][y] = True queue.append([x,y]) kill_ai_stone = 1 flag = 0 while queue: x,y = queue..