소개: Lianliankan 게임을 개발하려면 Silverlight 2.0(c#)을 사용하십시오. 게임 방법: 선택한 두 카드 사이의 연결이 3개 이하의 직선이면 선택한 두 카드를 제거할 수 있습니다. .
아이디어 1. 카드 초기 배열 알고리즘: 컨테이너 용량은 x, 고유 카드 수는 y, x >= y && x % 2 == 0으로 알려져 있으며, 먼저 컨테이너에 카드를 무작위로 배열한 다음 꺼냅니다. 컨테이너에 있는 동일한 카드 홀수(세트의 구성원 수는 짝수여야 함)가 있는 세트의 경우 마지막으로 세트를 보드 전체로 자르고 세트의 오른쪽 절반에서 왼쪽 절반으로 카드를 복사합니다. 세트의 순서대로. 위의 알고리즘은 특정 무작위 비율을 기반으로 홀수 개의 동일한 카드가 존재하지 않도록 보장합니다. 2. 해결 알고리즘 없음 및 재배열 알고리즘: 컨테이너에 존재하는 카드 중 제거 가능한 경로가 쌍으로 있는지 여부를 계산합니다. 그렇지 않으면 해결 방법이 없으므로 재정렬해야 합니다. 재배열 시에는 기존 카드 세트와 카드 포지션 세트를 가져와서 카드 세트에서 무작위로 카드를 뽑아(한 장을 빼면 원래 세트에서 이 카드가 제거됩니다) 카드 포지션 세트에 넣어야 합니다. 기존 카드를 교체하는 목적을 달성하기 위해. 3. 2점 제거 경로 알고리즘 및 최적의 제거 경로 선택 알고리즘 : 플레이어가 선택한 첫 번째 지점의 x축 방향과 y축 방향으로 자리 표시자(자신 포함) 없이 모든 좌표 세트를 취하고, 이름 는 각각 x1s, y1s입니다. 플레이어가 선택한 두 번째 지점의 x축 방향과 y축 방향으로 자리 표시자(자신 포함) 없이 모든 좌표 세트를 가져오며 이름은 각각 x2s, y2s입니다. 먼저 x1s에서 x 좌표가 동일한 두 점을 찾고 y2s에서 제거 가능한 경로 집합을 찾습니다. 두 세트의 조합은 플레이어가 선택한 두 지점 사이의 모든 지울 수 있는 경로의 집합입니다. 세트가 비어 있으면 두 지점을 제거할 수 없습니다. -세트의 점 연결선은 경로 커넥터 제거입니다. 4. 게임은 MVVM(Model - View - ViewModel) 패턴을 사용하여 개발되었습니다.