본문 바로가기

분류 전체보기

(256)
파이선) 미로만들기 - BOJ https://www.acmicpc.net/problem/2665 from collections import deque n = int(input()) arr = [] for i in range(n): arr.append(str(input())) visit = [[False for _ in range(n)] for _ in range(n)] q = deque() q.append((0, 0, 0)) visit[0][0] = True dx = [0, 0, -1, 1] dy = [1, -1, 0, 0] while q: x, y, cnt = q.popleft() if x == n-1 and y == n-1: print(cnt) break for i in range(4): nx = dx[i] + x ny = dy[..
파이썬) 뱀과 사다리 게임 - BOJ https://www.acmicpc.net/problem/16928 이 문제는 bfs처럼 보이는 구현 문제였다. 주어진 조건만 잘 살펴보면 된다. 주사위를 굴려 다음 칸으로 이동한다 만약 다음칸이, 즉 nx가 사다리라면 사다리를 타고 이동한다 nx가 뱀이라면 뱀을타고 이동한다 출발지점과 도착지점엔 뱀과 사다리가 없다 from collections import deque n, m = map(int, input().split()) ladder = [] snake = [] for _ in range(n): a, b = map(int, input().split()) ladder.append([100-a, 100-b]) for _ in range(m): a, b = map(int, input().split()) ..
파이썬) 다리 만들기 - BOJ https://www.acmicpc.net/problem/2146 import sys from collections import deque input = sys.stdin.readline dx = [-1, 1, 0, 0] dy = [0, 0, -1, 1] # 섬을 구분해주는 bfs def bfs1(i, j): global count q = deque() q.append([i, j]) vis[i][j] = True arr[i][j] = count while q: x, y = q.popleft() for k in range(4): nx = x + dx[k] ny = y + dy[k] if 0 = n: continue # 다른 땅을 만나면 기존 답과 비교하여 짧은 거리 선택 if arr[nx][ny] > 0 ..
파이썬) 암기왕 -BOJ https://www.acmicpc.net/problem/2776 from bisect import bisect_left t = int(input()) def find(): n = int(input()) arr = list(map(int, input().split())) m = int(input()) arr2 = list(map(int, input().split())) arr.sort() for i in range(len(arr2)): target = arr2[i] start = 0 end = n-1 while start arr[mid]: start = mid + 1 else: end = mid - 1 if start > end: print(0) for _ in range(t): find()
파이선) 기타 레슨- - BOJ https://www.acmicpc.net/problem/2343 2343번: 기타 레슨 강토는 자신의 기타 강의 동영상을 블루레이로 만들어 판매하려고 한다. 블루레이에는 총 N개의 강의가 들어가는데, 블루레이를 녹화할 때, 강의의 순서가 바뀌면 안 된다. 순서가 뒤바뀌는 경 www.acmicpc.net n, m = map(int, input().split()) arr = list(map(int, input().split())) result = sum(arr) start = 0 end = sum(arr) while start
파이썬) 구슬탈출 -BOJ https://www.acmicpc.net/problem/13460 13460번: 구슬 탈출 2 첫 번째 줄에는 보드의 세로, 가로 크기를 의미하는 두 정수 N, M (3 ≤ N, M ≤ 10)이 주어진다. 다음 N개의 줄에 보드의 모양을 나타내는 길이 M의 문자열이 주어진다. 이 문자열은 '.', '#', 'O', 'R', 'B' www.acmicpc.net from collections import deque import sys input = sys.stdin.readline # 빠른 입출력 위한 코드 n, m = map(int, input().split()) graph = [] for i in range(n): graph.append(list(input())) for j in range(m): if..
Next.js 시작하기(5) Pre-Rendering Data Fetching에 대해 이야기하기 전에 Next.js의 가장 중요한 개념중 하나인 Pre-rendering에 대해 이야기를 해보겠습니다. 기본적으로 Next.js는 모든 페이지를 미리 렌더링합니다. 이는 Next.js가 클라이언트 측 JavaScript로 모든 작업을 수행하는 대신 각 페이지에 대해 미리 HTML을 생성한다는 것을 의미합니다. 사전 렌더링을 통해 성능과 SEO가 향상될 수 있습니다 . 즉, 자바스크립트를 실행하기 전, 미리 HTML을 생성하기 때문에 검색엔진(구글 등)에서 웹사이트를 크롤링함에 있어서 웹사이트에 대한 정보를 가져오기가 수월하다는 의미이다. 생성된 각 HTML은 해당 페이지에 필요한 최소한의 JS코드와 연결됩니다. 브라우저가 페이지를 로드하..
Next.js 시작하기(4) Assets, meta data and Css Next.js는 최상위 public폴더아래 이미지와 같은 정적 컨텐츠를 제공할수 있습니다. 일반적으로 태그를 이용하여 이미지를 html에 넣는 것과 달리 next에서는 태그를 이용해 이미지를 렌더합니다. Next.js는 기본적으로 이미지 최적화도 지원합니다. 이를 통해 브라우저가 지원하는 경우webp와 같은 최신 형식으로 이미지 크기 조정, 최적화 및 제공이 가능합니다 . 이렇게 하면 뷰포트가 더 작은 장치에 큰 이미지를 전달하는 것을 방지할 수 있습니다. 또한 Next.js는 미래의 이미지 형식을 자동으로 채택하고 해당 형식을 지원하는 브라우저에 제공할 수 있습니다. 자동 이미지 최적화는 모든 이미지 소스에서 작동합니다. 이미지가 CMS와 같은 외부 데이터..