-
[퍼즐:14] 퍼즐 계산과 퍼즐 추천 기능개발 2024. 2. 21. 23:41
[퍼즐:10] 500조각 퍼즐 완성 글을 보면 퍼즐 계산 기능이 있다.
계산 기능
A B X Y 기존 A, B조각이 있을 때 X 위치를 계산하게 되면
A기준 아랫쪽에 연결될 수 있는 경우가 쭉 나온다.
적게는 20개, 많게는 200개의 후보가 나온다.
그래서 보통 위 그림처럼 A, B 아래 조각 X, Y를 동시에 계산한다.
- A 아래의 조각 후보
- B 아래의 조각 후보
- 그 후보들 간에 서로 연결 될 수 있는 조합
이것을 만족하는 경우를 계산표에 표시한다.
한개씩 계산하면 효율적이지 않아서,
묶음으로 짝을 맞춰보는 것이다.
위 그림으로 설명하면,
(417, 179, 358)은 이미 맞춰져있는 영역이다.
그 아래 연결될 수 있는 조합으로 (30, 67, 458) 을 "계산5"으로 계산한 것이다.
이것이 의미하는 바는 각각 서로의 연결이 모두 상위 5개 후보 안에 있다는 것이다.
- 417 아래에 연결될 수 있는 조각 중 잘 맞는 상위 5개 중 30이 있었다.
- 30 오른쪽에 연결될 수 있는 조각 중 마침 67 이 있었는데,
- 67 은 179 아래에 연결될 수 있는 조각 중 상위 5개 이내에 있었다는 뜻이다.
묶음으로 찾으면 웬만해선 잘 들어맞는다.
특히 3-4개 정도 묶음으로 찾으면 확률이 높았다.
한 번에 40개 퍼즐을 찾은 경우도 있었다.
추천 기능
이렇게 묶음으로 찾으면 좋긴한데, 어느 순간 막힐 때가 온다.
어느곳을 눌러봐도 계산 결과가 나오지 않았다.
이럴 때 하는 방법은 뭐 별거 없다.
그냥 하나씩 눌러보면서 가장 정확도가 높은 것 부터 하나씩 넣어보는 것 밖에 없다.
여기에서 정말 많은 시간이 들었다.
(한 칸만 후보에 넣으면 항상 수많은 경우가 있다)
그래서 만든것이 추천 기능이다.
추천 기능은 남은 빈 공간에 들어갈 수 있는 모든 퍼즐 중에서 가장 정확도가 높은 것을 순서대로 보여주는 기능이다.
묶음으로 더 이상 진행하지 못할 때 한개씩이라도 맞추는 전략이다.
녹색 면에 가능한 모든 퍼즐 중 가장 정확도가 높은 것을 오른쪽 표에 표시한다.
오른쪽 표에 커서를 올리면 왼쪽 표에 표시가 된다.
나는 퍼즐을 찾아서 표시된 부분에 넣어본다.
맞춰지면 선택을 누르고, 아니라면 제외를 누른다.
이 방법은 정확도가 높진 않았다.
수많은 실패를 했다.
약 500번의 오답을 만들었다.
'개발' 카테고리의 다른 글
[퍼즐:16] 개선 점 (0) 2024.02.22 [퍼즐:15] 드디어 완성 (0) 2024.02.22 [퍼즐:13] 끝나지 않는 코너 찾기 (0) 2024.02.14 [퍼즐:12] 퍼즐 프로그램 (Web UI) (1) 2024.02.14 [퍼즐:11] 루피 2000 조각 퍼즐 사진 촬영 (0) 2024.02.03