[AI-Paper] 4DGS
·
AI-Paper/3D-GS
티스토리 오블완 챌린지!!
·
카테고리 없음
https://www.tistory.com/event/write-challenge-2024 작심삼주 오블완 챌린지오늘 블로그 완료! 21일 동안 매일 블로그에 글 쓰고 글력을 키워보세요.www.tistory.com3주 동안 매일 블로그를 쓰면, 상품을 준다고 하네요!후한 상품이니 꼭 도전해봐야겠어요!!
진단 통신 개요(UDS)
·
통신 및 네트워크
UDS: 통합 진단 서비스 프로토콜로 다양한 진단 서비스를 지원하기 위해 진단 절차 및 데이터 표현법 등을 정의한 통신 규약클라이언트: 서비스를 요청하는 측, 일반적으로 진단기가 해당된다서버: 진단 통신에서 서버는 서비스 요청을 받는 측으로 일반적으로 차량 내 전자 제어기가 해당된다 UDS:CAN, LIN, Ethermet 등의 통신 방식이 아니라 진단을 위한 서비스를 어떻게 정의하는지에 대한 내용 OBD-2의 법적 서비스 제공제조사와 기술자 간의 진단 규약   UDS 테스터와 UDS 모듈 간의 통신진단 정보의 모양을 CAN, LIN, 이더넷 등의 진단 데이터의 모양을 규정한다. 진단 정보에 대한 내용은 동일하다. UDS 통신 서비스1. 진단기와 제어기의 연결 절차 정의2. 진단 통신 연결 시 여러 기능..
진단 통신에 대해서
·
통신 및 네트워크
1. 진단 통신: 차량 내 전자 제어기들의 상태를 외부 진단기를 통해 알 수 있도록 하기 위해 사용되는 통신2. OBD: 법규 및 차량 진단을 위해 필요한 커넥터 및 인터페이스에 대한 정의3. 리프로그래밍: 차량 내 전자 제어기들의 SW를 업데이트하는 작업 미국에서 처음에 배기가스의 양을 측정하기 위해서 만들어진 방법이다. OBD-2: 모든 차량에 탑재하도록 의무화 되었다.차량 내부의 제어기에서 문제 발생시 파악하기 어려움차량 내부의 각종 정보를 모니터링 할 수 있다: 차량 내부 정비의 용이국제 표준으로 iso 15765 진단 커넥터 설치를 법으로 규정하고 있다.  법규: OBD: 진단 커넥터의 제작 기준, 차량의 정보 획득 경로표준: ISO제어기의 펌웨어 업데이트를 하는 중간 장비: 커넥터, 진단 통신..
[백준]25418번: 정수 a를 k로 만들기 (파이썬)
·
Algorithm/BOJ
📌 문제 탐색하기 A와 K가 주어지면, (A + 1), (2 * A) 두 종류의 연산을 통해 A를 K로 만들기 위한 최소 연산의 횟수를 출력해야한다.🔎  시간 복잡도1 ≤ A  K ≤ 1,000,000 숫자 내에서 BFS를 사용해 최단 경로를 찾으므로 시간복잡도는 O(N)이다.🔎 접근 방법 및 알고리즘새로운 숫자를 방문할 때 그 숫자까지의 최소 연산 횟수를 기록하고 새로운 숫자를 큐에 추가해야한다. 📌 코드 설계하기1. A와 K를 입력받는다.2. 데큐를 사용해서 큐를 만든다.3. 딕셔너리 V는 각 숫자까지의 최소 연산 횟수를 저장한다4. BFS탐색: 만약 현재 숫자 C가 K라면, 탐색을 종료한다. 5. v[x] = v[c] + 1 # 연산 횟수 기록6. q += [x] # 큐에 새로운 숫자 추가?..
[백준] 17266번: 어두운 굴다리 (이분탐색, 파이썬)
·
Algorithm/BOJ
📌 문제 탐색하기 양 옆으로 가로등 높이 H만큼 비추는 가로등 M개가 있다고 했을때, 길이 N의 굴다리를 전부 밝힐 수 있는 최소 가로등의 높이를 구하는 문제이다. 🔎  시간 복잡도각 가로등 간의 간격을 순회해야하므로 M+1번 비교를 해야한다. 간격을 순회하면서 해당 높이를 탐색하면 되므로,  시간 제한안에 풀 수 있다.🔎 접근 방법 및 알고리즘가로등의 높이가 클수록 더 넓은 범위를 비추고, 작을수록 적은 범위를 비춘다.가로등의 높이가 가능한 범위는 0 ~ N (100,000)이다📌 코드 설계하기1️⃣ X의 리스트 이웃한 두 숫자 간 넓이를 순회하자. 예를 들면 i, i + 1번째 x가 각각 3과 10이라고 한다면, 가로등의 최소 높이는  반올림한 값인 round((10 - 3) / 2)가 될 것..
[백준] 2615번: 오목 (구현, 파이썬)
·
Algorithm
📌 문제 탐색하기 입력으로 주어진 오목 판의 상태를 확인하고, 검은색(1)이 이겼을 경우에는 1을 출력하고, 흰색(2)이 이겼을 경우에는 2를 출력한다. 아직 무승부라면 0을 출력한다. 또한 1, 2를 출력한다면, 가장 왼쪽에 있는 바둑알의 좌표를 출력해야한다. 🔎 문제 조건검은 바둑알 또는 흰색 바둑알이 5개 놓여 오목일때, 해당 색상을 출력하고, 상단 좌표를 출력해야한다.가장 왼쪽에 있는 좌표를 출력해야하므로 ↙ 방향으로 오목이 생길때는 마지막으로 탐색한 좌표를 출력해야한다. 🔎  시간 복잡도19 x 19자리에서 4방향(↙,↓,↘,→ )에 대해 탐색을 진행하므로 시간 제한 1초 안에 해결할 수 있다. 🔎 접근 방법 및 알고리즘 ↙, ↓, ↘, → 순서대로 DFS를 진행했다.여섯 알 이상이 놓인..
[백준] 2503번: 숫자 야구 (구현, 파이썬)
·
Algorithm/BOJ
📌 문제 탐색하기 영수가 생각하는 숫자의 후보 갯수를 구하는 문제이다. 각 자리에 해당하는 숫자 비교와 1~9의 숫자들 중 숫자를 소거해가며 후보 수를 구할 수 있다. 하나하나 비교해야하므로 구현을 통해 풀 수 있다. 🔎 문제 조건같은 숫자, 같은 자리면 Strike 1점을 얻을 수 있고, 같은 숫자, 다른 자리면 Ball 1점을 얻을 수 있다. Strike 3점이면 게임은 끝난다. 🔎  시간 복잡도N의 범위 ( 1 ≤ n ≤ 100 )제한 시간: 1초 -> 약 1억번의 연산이 가능하다.100개의 숫자 중 2개를 택해 서로 비교하는 조합의 수는 4950이므로 제한 시간 안에 탐색을 끝낼 수 있다. \스트라이크(S), 볼(B)을 기준으로 정렬하는 데 대략 O(100log100) = 약 664이다. ?..
[백준] 13567번: 로봇 (구현, 파이썬)
·
Algorithm/BOJ
📌 문제 조건TURN 0: 왼쪽으로 90도 방향을 바꾼다. TURN 1: 오른쪽으로 90도 방향을 바꾼다. MOVE d: d만큼 현재 방향에서 직진한다.시작 위치는 (0, 0), 초기 방향은 (+1, 0)이다! ▷ 출력: 만약, 정사각형 영역을 벗어난다면 -1을 출력하고, 벗어나지 않는다면 현재의 좌표를 출력한다. 문제의 조건 중에서 칸 안에 정보를 얻는 것이 아니므로 (x, y) 값 자체에서 연산해도 무방하다!📌 구해야 하는 정답   로봇이 (0,0)이 n번의 명령을 수행하며 마지막에 위치하는 좌표를 구해야 한다. 📌 풀이 하기동작 조건은 MOVE와 TURN 2가지이다. 동작 각각에 대한 함수를 정의하여 해도 되지만, 바로바로 위치와 방향이 업데이트 되어야하고, 동작이 간단하므로 함수로 정의하지 ..
[백준] 2096: 내려가기 (DP, 파이썬)
·
Algorithm/BOJ
📌 문제 조건- 메모리 제한 4MB 📌 구해야 하는 정답   N x 3 칸에 0~9의 숫자가 적혀있다.    첫 줄부터 마지막 줄까지 내려가면서 얻는 최대 점수와 최소 점수를 모두 구해야한다.    위 그림의 조건을 만족하면서 내려가야한다. 📌 풀이 하기1. DP 테이블 정의하기 D = [[0, 0, 0], ... , [0, 0, 0]]로 정의한다면  N X 3크기의 공간을 차지하므로 현재 상태와 이전 상태를 저장하는 리스트만 있어도 충분하다. D[i]는 i번째 줄에서의 최대 점수의 합이다. 최대 값을 구하는 점화식은 다음과 같다. -> dp테이블이 공간을 잡아먹으므로 다른 방법을 사용한다 D[i][0] = max(D[i - 1][0], D[i - 1][1]) + S[i][0]D[i][1] = ma..