분류 전체보기
-
[백준/BOJ] 17140번 이차원 배열과 연산 (C++)알고리즘 문제풀이/백준 2021. 1. 30. 22:39
www.acmicpc.net/problem/17140 17140번: 이차원 배열과 연산 첫째 줄에 r, c, k가 주어진다. (1 ≤ r, c, k ≤ 100) 둘째 줄부터 3개의 줄에 배열 A에 들어있는 수가 주어진다. 배열 A에 들어있는 수는 100보다 작거나 같은 자연수이다. www.acmicpc.net 어려운 구현 문제였습니다. (다시 풀기) 1. 현재 행에서 각 열의 숫자가 나오는 빈도 수를 구합니다. (cnt 배열 이용) 2. cnt 배열의 값이 0 이상인 경우, 숫자와 그 빈도 수를 저장합니다. (pair형 2차원 벡터 v 이용) 3. 초기 입력 배열 A를 0으로 초기화하고, v 벡터를 빈도 수, 크기 순으로 오름차순 정렬합니다. (이를 쉽게 하기 위해서 v에 값을 넣을 때 빈도 수를 fir..
-
[프로그래머스/Level 3] 등굣길 (C++)알고리즘 문제풀이/프로그래머스 2021. 1. 29. 14:48
programmers.co.kr/learn/courses/30/lessons/42898 코딩테스트 연습 - 등굣길 계속되는 폭우로 일부 지역이 물에 잠겼습니다. 물에 잠기지 않은 지역을 통해 학교를 가려고 합니다. 집에서 학교까지 가는 길은 m x n 크기의 격자모양으로 나타낼 수 있습니다. 아래 그림은 m = programmers.co.kr 각각의 좌표는 해당 좌표를 갈 수 있는 경우의 수를 의미한다. 학교를 기준으로 왼쪽과 위에서 계속 합쳐지면서 경우의 수가 구해진다. (위의 그림을 보면 이해가 갈 것이다.) 이를 통해 얻을 수 있는 점화식은 다음과 같다. dp[n][m] = dp[n - 1][m] + dp[n][m - 1] #include #include using namespace std; int..
-
[프로그래머스/Level 3] N으로 표현 (C++)알고리즘 문제풀이/프로그래머스 2021. 1. 29. 13:14
programmers.co.kr/learn/courses/30/lessons/42895 코딩테스트 연습 - N으로 표현 programmers.co.kr DP 유형의 문제이지만 DFS를 이용한 완전탐색으로 해결한 문제 +N, -N, *N, /N +NN, -NN, *NN, /NN +NNN, -NN, *NN, /NN .... 반복적인 작업을 통해 만약 N을 사용한 갯수(cnt)가 9이상이라면 가지를 뻗지 않고 리턴, 위의 작업을 하며 만들어진 수(sum)이 number와 같다면 최소값을 갱신해줍니다. #include #include using namespace std; int answer = 9, N, Number; void DFS(int now, int cnt) { if(cnt >= 9) return; if..
-
[프로그래머스/Level 3] 정수 삼각형 (C++)알고리즘 문제풀이/프로그래머스 2021. 1. 28. 23:55
programmers.co.kr/learn/courses/30/lessons/43105 코딩테스트 연습 - 정수 삼각형 [[7], [3, 8], [8, 1, 0], [2, 7, 4, 4], [4, 5, 2, 6, 5]] 30 programmers.co.kr DP유형의 문제로, 백준의 1932번과 똑같은 문제였습니다. DFS를 호출할 때, 2차원 입력값을 전역변수로 설정하지 않고 매번 호출하게 되면 메모리 낭비로 인한 시간초과가 발생할 수 있기 때문에 전역으로 따로 선언 후, 값을 복사해주었습니다. #include #include #include using namespace std; int dp[501][501]; vector cpy; int DFS(int x, int y, int size) { if(dp..
-
[백준/BOJ] 17144번 미세먼지 안녕! (C++)알고리즘 문제풀이/백준 2021. 1. 28. 00:57
www.acmicpc.net/problem/17144 17144번: 미세먼지 안녕! 미세먼지를 제거하기 위해 구사과는 공기청정기를 설치하려고 한다. 공기청정기의 성능을 테스트하기 위해 구사과는 집을 크기가 R×C인 격자판으로 나타냈고, 1×1 크기의 칸으로 나눴다. 구사 www.acmicpc.net 삼성 역량 테스트 기출 문제 : 시뮬레이션(구현) (다시 풀기) 먼지의 확산을 구현하고, 공기청정기의 작동을 구현하면 되는 문제입니다. 이때 주의해야 할 점은 먼지의 확산을 구현하는 과정에서, 2차원 배열이 하나만 존재하면 올바른 확산을 구현할 수 없기 때문에 두 개의 배열이 필요합니다. 공기청정기의 작동은 다음과 같은 접근으로 구현했습니다. 위 공기청정기, 아래 공기청정기를 기준으로 가까운쪽에서 시작하여, ..
-
[백준/BOJ] 16235번 나무 재테크 (C++)알고리즘 문제풀이/백준 2021. 1. 26. 17:37
www.acmicpc.net/problem/16235 16235번: 나무 재테크 부동산 투자로 억대의 돈을 번 상도는 최근 N×N 크기의 땅을 구매했다. 상도는 손쉬운 땅 관리를 위해 땅을 1×1 크기의 칸으로 나누어 놓았다. 각각의 칸은 (r, c)로 나타내며, r은 가장 위에서부터 www.acmicpc.net 삼성 역량 테스트 기출 문제 : 시뮬레이션(구현) (다시 풀기) 입력 조건 N : map의 가로, 세로 크기 M : 구매하여 심은 나무의 수 K : 지난 시간 x, y : 나무의 위치, z : 나무의 나이 제한 사항 1 ≤ N ≤ 10 1 ≤ M ≤ N2 1 ≤ K ≤ 1,000 1 ≤ A[r][c] ≤ 100 1 ≤ 입력으로 주어지는 나무의 나이 ≤ 10 입력으로 주어지는 나무의 위치는 모두 ..
-
[백준/BOJ] 16234번 인구 이동 (C++)알고리즘 문제풀이/백준 2021. 1. 25. 21:44
www.acmicpc.net/problem/16234 16234번: 인구 이동 N×N크기의 땅이 있고, 땅은 1×1개의 칸으로 나누어져 있다. 각각의 땅에는 나라가 하나씩 존재하며, r행 c열에 있는 나라에는 A[r][c]명이 살고 있다. 인접한 나라 사이에는 국경선이 존재한다. 모 www.acmicpc.net 삼성 역량 테스트 기출 문제 : BFS + 시뮬레이션(구현) (다시 풀기) 문제의 포인트는 BFS 탐색시에 방문하는 좌표를 저장할 큐를 하나 더 선언하는 것입니다. 그래서 BFS를 탐색과 좌표 저장을 동시에 진행하면서, 좌표를 저장한 큐를 하나씩 꺼내어 이에 평균을 넣어주면 쉽게 해결할 수 있습니다. #include #include #include #include using namespace st..
-
[Spring] 스프링 부트 + 리액트 환경 구축 및 연동WEB/Spring 2021. 1. 24. 15:50
오늘 진행할 실습 스프링 부트 환경 구축 리액트 환경 구축 스프링부트와 리액트 연동하기 스프링 부트 환경 구축 먼저 스프링 부트 환경을 구축하도록 하겠습니다. 스프링 부트 환경을 구축하기 위해 필요한 준비물은 다음과 같습니다. JDK 1.8 이상 STS or IntelliJ (스프링 부트를 돌릴 수 있는 IDE 아무거나) 해당 글에서는 이미 준비물이 설치되어 있으므로, 실습에 앞서 두 가지를 먼저 준비하셔야합니다. 이전 블로그 글에 JDK 설치법을 올려두었으니 참고하시면 좋을 것 같습니다. (IDE는 사람마다 다른 것을 사용하므로 본인이 사용하는 IDE 설치법을 찾아보시길 바랍니다.) 필요한 것들을 모두 준비하셨다면, 이제 실습에 진행할 스프링 부트 프로젝트를 만들어보도록 하겠습니다. 저는 아래와 같이 ..