목록2026/03/03 (2)
승코딩당당당
📌 개요임베디드 시스템은 제한된 메모리와 낮은 연산 자원을 기반으로 동작하는 경우가 많기 때문에, 동일한 기능을 구현하더라도 코드를 어떻게 작성하느냐에 따라 성능과 자원 사용량이 크게 달라진다. 특히 MCU 환경에서는 ROM과 RAM이 모두 한정되어 있고, 실행 속도 또한 시스템 안정성과 직결되기 때문에 C 코드 최적화는 선택이 아니라 필수에 가깝다. 이번 글에서는 임베디드 C 코드 최적화를 메모리 관점, 실행 속도 관점, 데이터 처리 관점, 흐름 제어 관점으로 나누어 정리하였다. 단순히 “빠르게 만드는 방법”이 아니라, 메모리 절약과 실행 속도 향상 사이의 균형을 어떻게 잡아야 하는지에 초점을 두고 살펴본다. 또한 자료형 선택, 타입 변환 최소화, 비트 연산 활용, 루프 최적화, 인라인 함수 사용 등..
문제[C++] 백준 11725: 트리의 부모 찾기 SILVER 2https://www.acmicpc.net/problem/11725 접근 방법이 문제는 루트가 1번인 트리가 주어졌을 때, 각 노드의 부모를 출력하는 문제다. 트리는 사이클이 없는 연결 그래프이기 때문에,1번 노드를 기준으로 DFS를 한 번만 돌면서 부모를 기록해주면 해결된다. 구현 아이디어는 간단하다:graph : 인접 리스트 (양방향 그래프)ret[i] : i번 노드의 부모 노드 번호visited[i] : 방문 체크DFS에서void dfs(int before, int now){ visited[now] = true; ret[now] = before; // now의 부모는 before for (int i = 0; i 이렇게..