오늘 외판원 문제를 풀었다. 정점을 모두 한 번만 방문할 때 최단 거리를 구하는 문제였다. 처음에는 greedy 한 방법으로 어떤 한 정점에서 갈수있는 최단 거리의 정점으로 이동하고 또 그 정점에서 가장까까운 (지난곳은 제외한) 정점으로 이동하는 방식을 반복한다면 가장 가까운 거리를 구할 수 있을 것이라 생각했다.
이 문제는 완전 탐색으로 풀어야 했다. 이름처럼 가능한 모든 조합을 모두 완전히 탐색해야 하는 문제였다. 모든 정점을 한 번씩 지나는 경로를 해밀턴 경로라고 한다.
어떠한 경우에 완전 탐색을 써야 하는지 알고 싶다. PNP 문제에 대해서 알아봐야겠다.
프로젝트를 진행하는 팀원 중 한분이 sass를 사용하자고 제안했다. 유지 보수에 장점이 있다고 한다. 처음 배우는 단계라 배경선 색깔과 폰트 크기 정도만 변수로 만들어 봤다. 그것보다 나는 css는 클래스네임을 짓는게 너무 힘들다. 편하게 막짓고 싶은데 그러면 나중에 고치는게 힘들것 같고, 고민해서 짓자니 시간을 많이 잡아먹는다. 좋은 방법이 없을까,,,
이제 주간 일간 달력의 배경을 완성했다. 날짜는 javascript 기본 Date 생성자가 아닌 luxon 을 사용했다. 어떤 날을 기준으로 전날, 다음날을 생성하기 편해서 달력에 쓰기 좋을 것 같다.