분류 전체보기 827

BOJ-2252 줄세우기

www.acmicpc.net/problem/2252 2252번: 줄 세우기 첫째 줄에 N(1≤N≤32,000), M(1≤M≤100,000)이 주어진다. M은 키를 비교한 회수이다. 다음 M개의 줄에는 키를 비교한 두 학생의 번호 A, B가 주어진다. 이는 학생 A가 학생 B의 앞에 서야 한다는 의미이 www.acmicpc.net dfs로 풀수 있지만. 위상정렬 공식으로 풀었다. 훕냐.. 공식.. 은 공식이다. import java.io.BufferedReader; import java.io.FileInputStream; import java.io.IOException; import java.io.InputStreamReader; import java.util.ArrayList; import java.ut..

algorithm/BOJ 2020.12.26

BOJ - 2056 작업

www.acmicpc.net/problem/2056 2056번: 작업 수행해야 할 작업 N개 (3 ≤ N ≤ 10000)가 있다. 각각의 작업마다 걸리는 시간(1 ≤ 시간 ≤ 100)이 정수로 주어진다. 몇몇 작업들 사이에는 선행 관계라는 게 있어서, 어떤 작업을 수행하기 위해 www.acmicpc.net 위상정렬 공부다가.. 결국 DP로 처리한다.. 위상정렬이 어렵네.. import java.io.BufferedReader; import java.io.FileInputStream; import java.io.IOException; import java.io.InputStreamReader; import java.util.ArrayList; import java.util.StringTokenizer; p..

algorithm/BOJ 2020.12.25

BOJ 2225 - 합분해

www.acmicpc.net/problem/2225 2225번: 합분해 첫째 줄에 답을 1,000,000,000으로 나눈 나머지를 출력한다. www.acmicpc.net dfs 문제인 줄 알았는데.. DP 문제다. 잘 모르겠어서 이삭님 풀이 보고 풀었다. blog.naver.com/kdy246/222184773335 백준 알고리즘 - #2225 합분해 문제/생각 정리 문제문제 풀이한 방법이 문제는 다이나믹 프로그래밍을 활용하면 쉽게 풀 수 있었다.​생각해봐야 할 것은 ... blog.naver.com 파스칼의 삼각형 문제로 D[i-1][j] + D[i][j-1]을 반복해서 계산하는 형태이다. 그런데.. 왜 D[N][K] 가 답이 아닌 D[N][K-1] 이 답이 되는지는 모르겠다.. 움움 어렵네

algorithm/BOJ 2020.12.25

BOJ 1948 - 임계 경로

www.acmicpc.net/problem/1948 1948번: 임계경로 첫째 줄에 도시의 개수 n(1 ≤ n ≤ 10,000)이 주어지고 둘째 줄에는 도로의 개수 m(1 ≤ m ≤ 100,000)이 주어진다. 그리고 셋째 줄부터 m+2줄까지 다음과 같은 도로의 정보가 주어진다. 처음에는 도로의 www.acmicpc.net 위상정렬을 이용한 문제인데.. 문제 자체 이해가 어렵다. 최단거리가 아닌, 최장 거리를 구하고.. 그때 간선의 개수를 구하는 문제이다. DP 스럽게 풀었다. import java.io.BufferedReader; import java.io.FileInputStream; import java.io.IOException; import java.io.InputStreamReader; imp..

algorithm/BOJ 2020.12.25

FastAPI+Vuejs 적용시 static file 처리

기존 Flask에서 FastAPI로 전환 후 static resource를 찾지 못한다는 404 Error가 발생했다. 그래서 fastapi에서 SPA 형태 Static resource 처리가 가능한 구조를 정리함. #-*- coding:utf-8 -*- import uvicorn import os import logging from fastapi import FastAPI, File, UploadFile, Request from fastapi.staticfiles import StaticFiles from fastapi.responses import FileResponse logger = logging.getLogger('app_fast_api') app = FastAPI() app.mount("/",..

Web 2020.12.22

boj-2820 자동차 공장

https://www.acmicpc.net/problem/2820 2820번: 자동차 공장 상근이는 자동차를 매우 좋아한다. 자동차 공장에 취직한 상근이는 계속된 승진 끝에 드디어 사장이 되었다. 공장에는 총 N명의 직원이 있다. 상근이를 제외한 모든 직원은 한 명의 상사가 있다. www.acmicpc.net 우선 문제 이해가 어려웠다. 뭘 하라는건지... 한참 만에 따라 하다 억지로 이해중.. 우선 range update를 팬윅트리를 이용해서 진행했다. static void updateRange(int a, int b, int v){ update(a, v); update(b+1, -v); } 문제는 하위 직원을 구하는 부분이 었는데.. 단순 dfs의 탐색이 아니라. 전위순회(pre-order)를 찾아야..

algorithm/BOJ 2020.12.02

Docker를 이용한 TensorFlow Serving 실행

텐서플로우 서빙(TensorFlow Serving) 텐서플로우 서빙(TensorFlow Serving)[2]은 구글에서 만든 프로덕션(production) 환경을 위한 유연하고(flexible), 고성능의(high-performance) serving 시스템이다. 보통 모델 설계 및 트레이닝이 끝나면 이를 실제 프로덕션 환경에 응용하기 위해서 추론(Inference)을 수행할 수 있는 시스템을 구축해야하는데 TensorFlow Serving은 이 과정을 최적화된 형태로 지원한다. Fashion MNIST 분류 CNN 학습 및 SavedModel 포맷으로 모델 저장 Serving 사용법을 익히기 위해서 Fashion MNIST 데이터셋을 분류하는 간단한 CNN 모델을 학습시키고 이를 TensorFlow S..

Data Structure 2020.11.29

BOJ 1806 - 투포인트

www.acmicpc.net/problem/1806 1806번: 부분합 첫째 줄에 N (10 ≤ N < 100,000)과 S (0 < S ≤ 100,000,000)가 주어진다. 둘째 줄에는 수열이 주어진다. 수열의 각 원소는 공백으로 구분되어져 있으며, 10,000이하의 자연수이다. www.acmicpc.net 부분합이지만, 부분합의 원소를 구하는 것이 아니라, 부분합이 S인 최소원소 길이를 구하는 것이라, 투포인트 S, E로 구하면 된다. 처음엔 접근이 어려웠으나,.. 풀다 보니.. 조금씩 이해하려 한다. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.S..

algorithm/BOJ 2020.11.21