본문 바로가기

코드킬러9

[EP.1] 라즈베리파이 VNC를 통한 원격 접속 1. VNC Viewer VNC 뷰어는 Windows PC, Linux 컴퓨터 또는 Mac 등 원하는 모든 컴퓨터에 즉시 원격 액세스 할 수있는 도구 다운로드 링크 https://www.realvnc.com/en/connect/download/viewer/ Download VNC Viewer | VNC® Connect Control VNC® enabled computers with VNC® Viewer. www.realvnc.com 2. 라즈베리파이에서 VNC 연결 설정 좌측 상단의 라즈베리파이 아이콘 클릭 [Preferences] 선택 [Raspberry Pi Configuration] 선택 Interfaces Tab 선택 필요한 옵션을 토글 버튼을 통해 on/off 설정(VNC On) 2023. 2. 15.
[EP.0] 라즈베리파이 구조와 OS 1. 라즈베리파이 영국 잉글랜드의 라즈베리 파이 재단이 학교와 개발도상국에서 기초 컴퓨터 과학의 교육을 증진시키기 위해 개발한 신용카드 크기의 싱글 보드 컴퓨터 2. 라즈베리파이 구조 3. 라즈베리파이 OS 카드 리더기를 통해 Micro SD 카드에 라즈베리파이 OS를 설치한다. 아래 링크를 통해 다운로드가 가능하다. https://www.raspberrypi.com/software/ Raspberry Pi OS – Raspberry Pi From industries large and small, to the kitchen table tinkerer, to the classroom coder, we make computing accessible and affordable for everybody. www.. 2023. 2. 15.
[백준 C++] 2206번: 벽 부수고 이동하기 1. 문제 https://www.acmicpc.net/problem/2206 2206번: 벽 부수고 이동하기 N×M의 행렬로 표현되는 맵이 있다. 맵에서 0은 이동할 수 있는 곳을 나타내고, 1은 이동할 수 없는 벽이 있는 곳을 나타낸다. 당신은 (1, 1)에서 (N, M)의 위치까지 이동하려 하는데, 이때 최단 경로 www.acmicpc.net 2. 알고리즘 분류 그래프 이론 그래프 탐색 너비 우선 탐색 3. 소스 코드 #include #include #include #include #include #include #define INF 987654321 using namespace std; int N, M; int map[1003][1003]; int visited1[1003][1003]; // 벽을 .. 2023. 2. 8.
[백준 C++] 17144번 : 미세먼지 안녕! 1. 문제 https://www.acmicpc.net/problem/17144 17144번: 미세먼지 안녕! 미세먼지를 제거하기 위해 구사과는 공기청정기를 설치하려고 한다. 공기청정기의 성능을 테스트하기 위해 구사과는 집을 크기가 R×C인 격자판으로 나타냈고, 1×1 크기의 칸으로 나눴다. 구사 www.acmicpc.net 2. 알고리즘 분류 구현 시뮬레이션 3. 소스 코드 #include #include using namespace std; int R, C, T; int total_dust = 0; int dr[] = { -1, 0, 1, 0 };// row 방향배열 int dc[] = { 0, 1, 0, -1 };// col 방향배열 int map[50][50];// 맵 정보 vector air_cl.. 2022. 12. 11.
[백준 C++] 14938번 : 서강그라운드 1. 문제 https://www.acmicpc.net/problem/14938 14938번: 서강그라운드 예은이는 요즘 가장 인기가 있는 게임 서강그라운드를 즐기고 있다. 서강그라운드는 여러 지역중 하나의 지역에 낙하산을 타고 낙하하여, 그 지역에 떨어져 있는 아이템들을 이용해 서바이벌을 www.acmicpc.net 2. 알고리즘 분류 그래프 이론 데이크스트라 플로이드-워셜 3. 소스 코드 3-1) 일반 DFS 활용 #include #include #include using namespace std; int max_item;// 최대 아이템 갯수 int items[101];// 각 지역의 아이템 갯수 bool visited[101];// 방문한 지역 체크 vector graph[101];// 지역 간의 .. 2022. 12. 9.
[백준 C++] 14502번: 연구소 1. 문제 https://www.acmicpc.net/problem/14502 14502번: 연구소 인체에 치명적인 바이러스를 연구하던 연구소에서 바이러스가 유출되었다. 다행히 바이러스는 아직 퍼지지 않았고, 바이러스의 확산을 막기 위해서 연구소에 벽을 세우려고 한다. 연구소는 크 www.acmicpc.net 2. 알고리즘 분류 구현 그래프 이론 프루트포스 알고리즘 그래프 탐색 너비 우선 탐색 3. 소스 코드 #include #include #include #include #include using namespace std; int N, M, max_safetyArea = 0; int map[10][10]; int tmp_map[10][10]; int dy[] = { -1, 0, 1, 0 }; int d.. 2022. 12. 8.
[알고리즘] 분할 정복(Divide and Conquer) 1. 정의 - 작은 문제로 분할하여 문제를 해결하는 방법 1) 분할 : 본 문제를 분할하여 비슷한 유형의 더 작은 하위 문제로 나누기 2) 정복 : 하위 문제를 각각을 재귀적으로 해결 3) 조합 : 하위 문제들의 답을 합쳐서 본 문제를 해결 2. 상세설명 - 특정 수나 행렬의 거듭제곱을 구할 때 사용 => 시간 복잡도 O(n)에서 O(logN)으로 줄일 수 있음 3. 적용 사례 3-1) 거듭제곱 long long power(long long n, long long m) { long long ret = 1; while (m) { if (m & 1) ret = ret * n % MOD; m = m / 2; n = n * n % MOD; } return ret; } 3-2) 행렬 거듭제곱 long long m.. 2022. 12. 8.
[백준 C++] 13172번 : Σ 1. 문제 https://www.acmicpc.net/problem/13172 13172번: Σ 모듈러가 11에서 1,000,000,007이 되어 답이 달라졌지만, 역시 3을 곱한 다음 1,000,000,007으로 나눈 나머지는 7이 된다. www.acmicpc.net 2. 알고리즘 분류 수학 정수론 분할 정복을 이용한 거듭제곱 모듈로 곱셈 역원 페르마의 소정리 3. 소스 코드 #include #define MOD 1000000007 using namespace std; // n^m을 구하는 함수 // 분할 정복을 이용한 거듭제곱 long long power(long long n, long long m) { long long ret = 1; while (m) { if (m & 1) ret = ret * .. 2022. 12. 8.
[백준 C++] 11054번 : 가장 긴 바이토닉 부분 수열 1. 문제 https://www.acmicpc.net/problem/11054 11054번: 가장 긴 바이토닉 부분 수열 첫째 줄에 수열 A의 크기 N이 주어지고, 둘째 줄에는 수열 A를 이루고 있는 Ai가 주어진다. (1 ≤ N ≤ 1,000, 1 ≤ Ai ≤ 1,000) www.acmicpc.net 2. 알고리즘 분류 다이나믹 프로그래밍 3. 소스 코드 #include #include using namespace std; int N, ans; int arr[1000]; int dp_asc[1000]; int dp_dec[1000]; int dp_bitonic[1000]; void input() { cin >> N; for (int i = 0; i > arr[i]; } voi.. 2022. 12. 2.