본문 바로가기

분류 전체보기

(53)
Create-React-App 프록시 설정 문제발생 React를 공부하기 위해 Youtube를 보면서 실습하던 도중, 영상에서는 프록시가 잘 작동이 되지만, 실습환경인 내 컴퓨터에서는 프록시가 잘 작동이 되지 않았습니다. 서버는 잘 작동이 되는데, 클라이언트에서 서버로 API를 요청하는데, 프록시가 작동을 하지 않아서 로딩이 되지 않는 문제점이 발생하였습니다. 문제원인 package.json파일이 server.js가 있는 root폴더와 소스코드와 클라이언트에게 제공하는 코드가 있는 client 폴더 두곳에 존재했는데, 서버쪽 package.json파일에만 프록시 설정을 해 주어서, 클라이언트에서 동작할 때는 프록시가 설정되어 있지 않아서 인식하지 못했습니다. 문제해결 두가지 방법이 있습니다. 1. client/package.json에 프록시 설정..
[백준/알고리즘] 19532번 수학은 비대면강의입니다 (브론즈 3) BOJ 19532번 풀이 알고리즘 : 수학, 완전탐색 UCPC 2020 예선 A번 문제인 수학은 비대면강의입니다 문제입니다. 대회때는 구현속도가 빠른 친구가 풀어서, 어떤 문제인지 제대로 보지도 못했는데, 간단한 완전탐색으로 해결했습니다. 문제에서 x, y가 -999 이상 999 이하의 정수로 주어진다고 했으므로, x의 값을 해당 범위로 완전탐색하고, 그때 valid한 y값이 존재한다면 정답이므로 출력 후 루프를 빠져나갑니다. 간단하게 첫째식에 x값을 넣어서 계산한 y값과 둘째식에 x값을 넣어서 계산한 y값이 같다면 출력하게 만들었습니다. 아래는 제출코드입니다. 더보기 #include // 2의 제곱수 판정 #define POW2(X) (X) == ((X)&(-(X))) // int pair 간단히 #d..
[백준/알고리즘] 19539번 사과나무 (실버 1) BOJ 19539번 풀이 알고리즘 : 그리디 알고리즘, 수학 UCPC 2020 예선 H번 문제인 사과나무 문제입니다. 대회 당시에는 해결방법이 정말 안보여서 꽤 어려웠던 문제인데, 다시 풀어보니 어렵지 않은 문제입니다. 먼저 물을 1회 뿌릴 때 마다 나무의 성장을 1, 2를 각 1회씩 시킬 수 있습니다. 즉, 한번에 성장시킬 수 있는 총 높이는 3입니다. 그래서 목표한 모든 나무의 높이의 합이 3의 배수가 아니라면 항상 "NO" 입니다. 만약 높이의 합이 3의 배수라면, 다음과 같이 생각할 수 있습니다. 총 X번 물을 뿌렸으면, 1만큼 성장을 X번, 2만큼 성장을 X번 한 것입니다. 즉, 높이의 합이 3의 배수이면서, 2만큼 성장을 X번 시킬 수 있다면 "YES"입니다. 왜냐하면 2만큼 성장을 X번 시켰..
[백준/알고리즘] 19541번 루머 (골드 4) BOJ 19541번 풀이 알고리즘 : BFS UCPC 2020 예선 G번 문제인 루머 문제입니다. 한 노드를 봤을 때, 연결된 인접 노드의 절반 이상이 루머를 믿고있다면, 해당 노드도 루머를 믿게 되고, 노드별로 루머를 믿게 된 시간을 출력하는 문제입니다. 여러가지 방법이 있겠지만, 저는 Queue를 두개 이용하여 BFS를 통해 해결했습니다. queue q, qq로 선언을 하였고, 다음과 같이 사용하였습니다. q : "루머를 믿고 있는" 노드번호, 현재 시간을 저장 qq : "q에서의 노드에 인접한" 노드번호, 현재 시간을 저장 먼저 q에 최초 루머를 믿고 있는 노드번호와 시간 0을 입력합니다. while(!q.empty()) 안에는 두개의 while문이 있는데, 첫번째 while문에서는, 현재 q에 들..
[백준/알고리즘] 17941번 목장 CCTV (플래티넘 5) BOJ 17941번 풀이 알고리즘 : 세그먼트 트리, 슬라이딩 윈도우 2020년도 UCPC를 연습할 겸 풀어본 대회(HCPC)에 있는 문제입니다. 문제를 간단히 다시 설명하면, N x M 크기의 목장에 양들이 있고, 양들은 크기가 정해져 있습니다. 그 목장에 CCTV를 설치하는데 CCTV는 아래로 r, 오른쪽으로 c만큼 크기의 직사각형을 촬영합니다. 특이하게, 이 CCTV는 촬영한 범위 내의 가장 큰 양의 크기를 알려줍니다. 그리고 방향을 나타내는 정수 D가 주어지는데, 이는 모든 양들이 상/하/좌/우 중 입력된 한 방향으로 하루에 한칸씩 이동합니다. 그래서 문제에서는 K일 동안 촬영했을 때, 각 촬영마다 촬영한 가장 큰 양의 크기를 모두 XOR한 값을 출력하는게 목표입니다. 이때 주의해야 할 점은, 문..
[백준/알고리즘] 5557번 1학년 (골드 5) BOJ 5557번 수가 주어질 때, 수 사이에 +, -를 넣고, 마지막 수 이전에 =를 넣었을 때 만들 수 있는 올바른 등식의 수를 구하시오. 풀이 알고리즘 : DP DP[i]를 i번째 수 까지 계산했을 때, 들의 집합으로 표현하였다. 그래서 앞의 수부터 +연산, -연산했을 때, 나온 값들을 모두 저장하고, 마지막 수 (등호 이후의 수)의 개수가 정답이다. 다음은 정답코드입니다. 더보기 #include // 2의 제곱수 판정 #define POW2(X) (X) == ((X)&(-(X))) // int pair 간단히 #define pii pair #define mp(X, Y) make_pair(X, Y) // 기본설정 typedef long long ll; using namespace std; int d..
[백준/알고리즘] 1916번 최소비용 구하기 (골드 5) BOJ 1916번 N개의 도시가 있고, 도시 사이를 이동하는 버스 M개가 있다. 도시 A에서 도시 B로 가는 버스 비용을 최소화 하려고 한다. 최소 비용을 출력하시오. 풀이 알고리즘 : 다익스트라 알고리즘 한 정점에서 다른 정점으로 이동하는 최소 거리를 구하는 문제입니다.도시 A에서 다른 모든 정점으로의 최소 거리를 구하기 위해 다익스트라 알고리즘을 이용하여 구현하였습니다. 모든 도시를 이중 for문으로 탐색하여 구하는 방법이 있고,우선순위 큐를 이용하여 구하는 방법이 있는데, 후자가 보통 빠르기에 우선순위 큐를 이용하여 구현하겠습니다. 우선순위큐에 를 입력하였고, 거리가 가까운 정점을 우선순위로 탐색하고,해당 정점에서 또 확인하지 않고 연결되어 있는 정점으로의 최소 거리를 갱신하여 PQ에 다시 입력하는..
[백준/알고리즘] 1932번 정수 삼각형 (실버 1) BOJ 1932번 다음과 같이 정수 삼각형이 주어진다. 맨 위층부터 아래에 있는 수 중 하나를 선택하여 아래층으로 내려올 수 있을 때, 선택된 수의 합이 최대가 되는 경로의 합을 출력하시오. 풀이 알고리즘 : DP 간단한 DP문제입니다. 맨 위의 수부터 아래로 내려갈때마다 높이를 정해주고, 각 높이의 각각의 위치에서의 최댓값을 저장하여 갱신해 나갑니다. 그러면 마지막 높이에서의 DP값들 중 최댓값이 선택된 수의 합이 최대인 경우입니다. 아래는 정답코드입니다. 더보기 #include // 2의 제곱수 판정 #define POW2(X) (X) == ((X)&(-(X))) // int pair 간단히 #define pii pair #define mp(X, Y) make_pair(X, Y) // 기본설정 typ..