https://www.acmicpc.net/problem/1520 1520번: 내리막 길 여행을 떠난 세준이는 지도를 하나 구하였다. 이 지도는 아래 그림과 같이 직사각형 모양이며 여러 칸으로 나뉘어져 있다. 한 칸은 한 지점을 나타내는데 각 칸에는 그 지점의 높이가 쓰여 있으 www.acmicpc.net 🐹 Description 문제 여행을 떠난 세준이는 지도를 하나 구하였다. 이 지도는 아래 그림과 같이 직사각형 모양이며 여러 칸으로 나뉘어져 있다. 한 칸은 한 지점을 나타내는데 각 칸에는 그 지점의 높이가 쓰여 있으며, 각 지점 사이의 이동은 지도에서 상하좌우 이웃한 곳끼리만 가능하다. 현재 제일 왼쪽 위 칸이 나타내는 지점에 있는 세준이는 제일 오른쪽 아래 칸이 나타내는 지점으로 가려고 한다. 그..
🦕 세그먼트 트리(Segment Tree)란? 세그먼트 트리는 배열에서 특정 구간에 대한 정보를 빠르게 쿼리하거나 수정할 수 있게 해주는 이진 트리 기반의 자료구조입니다. 이 자료구조는 주로 범위 쿼리 문제에 활용되며, 그 중에서도 구간 합을 빠르게 계산하는 데에 자주 사용됩니다. 원리 세그먼트 트리의 각 노드는 배열의 특정 구간을 대표합니다. 리프 노드는 배열의 개별 원소를 나타냅니다. 부모 노드는 자식 노드들의 합을 저장합니다. 이런 방식으로 트리의 루트 노드는 배열 전체의 합을 저장하게 됩니다. 예시 배열 A [1, 3, 5, 7, 9, 11]을 고려해봅시다. 이때 Tree 는 [0, 36, 9, 27, 4, 5, 16, 11, 1, 3, 7, 9] 가 됩니다. 각 노드에는 배열의 구간 합이 저장되..
https://www.acmicpc.net/problem/2357 2357번: 최솟값과 최댓값 N(1 ≤ N ≤ 100,000)개의 정수들이 있을 때, a번째 정수부터 b번째 정수까지 중에서 제일 작은 정수, 또는 제일 큰 정수를 찾는 것은 어려운 일이 아니다. 하지만 이와 같은 a, b의 쌍이 M(1 ≤ M ≤ 100 www.acmicpc.net 🐹 Description 문제 N(1 ≤ N ≤ 100,000)개의 정수들이 있을 때, a번째 정수부터 b번째 정수까지 중에서 제일 작은 정수, 또는 제일 큰 정수를 찾는 것은 어려운 일이 아니다. 하지만 이와 같은 a, b의 쌍이 M(1 ≤ M ≤ 100,000)개 주어졌을 때는 어려운 문제가 된다. 이 문제를 해결해 보자. 여기서 a번째라는 것은 입력되는 ..
https://www.acmicpc.net/problem/7579 7579번: 앱 입력은 3줄로 이루어져 있다. 첫 줄에는 정수 N과 M이 공백문자로 구분되어 주어지며, 둘째 줄과 셋째 줄에는 각각 N개의 정수가 공백문자로 구분되어 주어진다. 둘째 줄의 N개의 정수는 현재 활 www.acmicpc.net 🐹Description 문제 우리는 스마트폰을 사용하면서 여러 가지 앱(App)을 실행하게 된다. 대개의 경우 화면에 보이는 ‘실행 중’인 앱은 하나뿐이지만 보이지 않는 상태로 많은 앱이 '활성화'되어 있다. 앱들이 활성화 되어 있다는 것은 화면에 보이지 않더라도 메인 메모리에 직전의 상태가 기록되어 있는 것을 말한다. 현재 실행 중이 아니더라도 이렇게 메모리에 남겨두는 이유는 사용자가 이전에 실행하던 ..
🐥사전 정보 다양한 임베디드 산업에서 너무 빠른 관련 산업 성장과 더불어 부족한 전문가 공급으로 인해 Model-Based Design(MBD)이 각광 받고 있습니다. 그 중 MathWorks 사의 Simulink의 주요 특징과, 자동차 분야에서의 적용 이유를 언급하고 CANoe와 연결 하는 방법에 대해 설명하겠습니다. Simulink 주요 특징 그래픽 모델링: 블록 다이어그램을 사용하여 시스템을 직관적으로 표현합니다. 시뮬레이션: 모델링한 시스템의 동작을 컴퓨터 상에서 시뮬레이션하여 결과를 분석합니다. 코드 생성: 모델링된 시스템에서 C, C++, VHDL 등의 코드를 자동 생성하여 임베디드 시스템에 적용할 수 있습니다. 자동차 분야 기능 안전 국제 표준인 ISO 26262의 ‘소프트웨어 수준에서 제품..
https://www.acmicpc.net/problem/17404 17404번: RGB거리 2 첫째 줄에 집의 수 N(2 ≤ N ≤ 1,000)이 주어진다. 둘째 줄부터 N개의 줄에는 각 집을 빨강, 초록, 파랑으로 칠하는 비용이 1번 집부터 한 줄에 하나씩 주어진다. 집을 칠하는 비용은 1,000보다 작거나 www.acmicpc.net 🐹Description 문제 RGB거리에는 집이 N개 있다. 거리는 선분으로 나타낼 수 있고, 1번 집부터 N번 집이 순서대로 있다. 집은 빨강, 초록, 파랑 중 하나의 색으로 칠해야 한다. 각각의 집을 빨강, 초록, 파랑으로 칠하는 비용이 주어졌을 때, 아래 규칙을 만족하면서 모든 집을 칠하는 비용의 최솟값을 구해보자. 1번 집의 색은 2번, N번 집의 색과 같지 않..
1. CAN Data Frame CAN data frame Identifier CAN의 Identifier라는 것은 Header의 앞부분에 속해져 있는데, 가야할 목적지의 주소가 아닌 현재 CAN Frame이 포함하고 있는 Data의 의미를 나타냅니다. 예를 들어 현재 싣고가는 Data의 정보가 Engine의 온도, Transmision의 1,2,3단 정보라는 것을 여기 CAN identifier에서 나타냅니다. 이로 인해 CAN에서 정보가 전송되어 특정 ECU에 전달되는 Message Routing은 이 Identifier에 의해 결정이 되는데, ECU 입장에서 구리선에 올라온 CAN Frame Identifier 내용을 보고 원하는 정보인지 아닌지를 판단하는 Acceptance Filtering 를 ..
Electric motor 1. DC 모터 EX) 미니카 모터, 미니 선풍기 모터 고정자로 자석을 사용(케이스에 자석이 고정) 회전자로 코일을 사용 브러쉬 : 코일이 돌아가다 전선이 꼬이는 것을 방지하기 위해 장착, 회색하고 구리색이 접촉이 되게끔 하여 전류의 방향을 전환(플레밍의 왼손 법칙) 가격이 저렴하고, 회로가 단순하나 브러쉬라는 부품을 사용하여 접촉하여 마찰이 일어나서 내구성이 떨어지고 소음이 발생 2. BLDC 모터 (Brushless DC모터) EX) 다이슨 선풍기, 헤어드라이기 고정자가 코일을 감은 전자석 회전자가 영구자석 영구자석 위치를 정확하게 알기 위해, 자석의 N,S극을 파악해주는 Hall sensor라는 센서가 부착되어 있음. 역기전력이 DC 형태로 나와서, BLDC모터이다. 따라..
https://www.acmicpc.net/problem/1010 1010번: 다리 놓기 입력의 첫 줄에는 테스트 케이스의 개수 T가 주어진다. 그 다음 줄부터 각각의 테스트케이스에 대해 강의 서쪽과 동쪽에 있는 사이트의 개수 정수 N, M (0 < N ≤ M < 30)이 주어진다. www.acmicpc.net 🐹Description 문제 재원이는 한 도시의 시장이 되었다. 이 도시에는 도시를 동쪽과 서쪽으로 나누는 큰 일직선 모양의 강이 흐르고 있다. 하지만 재원이는 다리가 없어서 시민들이 강을 건너는데 큰 불편을 겪고 있음을 알고 다리를 짓기로 결심하였다. 강 주변에서 다리를 짓기에 적합한 곳을 사이트라고 한다. 재원이는 강 주변을 면밀히 조사해 본 결과 강의 서쪽에는 N개의 사이트가 있고 동쪽에는 ..
https://www.acmicpc.net/problem/11501 11501번: 주식 입력의 첫 줄에는 테스트케이스 수를 나타내는 자연수 T가 주어진다. 각 테스트케이스 별로 첫 줄에는 날의 수를 나타내는 자연수 N(2 ≤ N ≤ 1,000,000)이 주어지고, 둘째 줄에는 날 별 주가를 나타 www.acmicpc.net 🐹Description 문제 홍준이는 요즘 주식에 빠져있다. 그는 미래를 내다보는 눈이 뛰어나, 날 별로 주가를 예상하고 언제나 그게 맞아떨어진다. 매일 그는 아래 세 가지 중 한 행동을 한다. 주식 하나를 산다. 원하는 만큼 가지고 있는 주식을 판다. 아무것도 안한다. 홍준이는 미래를 예상하는 뛰어난 안목을 가졌지만, 어떻게 해야 자신이 최대 이익을 얻을 수 있는지 모른다. 따라서 ..