부울 매트릭스의 회전적으로 변하지 않는 식별자를 가질 수 있습니까?

StackOverflow https://stackoverflow.com/questions/1812737

  •  06-07-2019
  •  | 
  •  

문제

매트릭스가 90, 180 또는 270도 (즉 . 이상적으로는이 식별자는 매트릭스 크기의 1/4 여야합니다. 이 매핑을하는 함수를 작성할 수 있습니까?

배경 : 나는보고 있었다 이 문제 UVA 문제 세트에서. 문제를 해결하기 위해 그러한 기능이 정확히 필요하지는 않지만 문제가 존재하는 것이 합리적으로 보이며 사용하면 더 우아한 솔루션을 만들 수 있습니다.

도움이 되었습니까?

해결책

예. 원래 행렬 A를 가져 와서 가능한 모든 구성 a ', a'및 '' '로 회전 할 수 있습니다. 그런 다음 선택한 정렬을 사용하여 정렬 할 수 있습니다 (일관성이 높아짐) 첫 번째를 선택하고 선택한 해시 함수를 사용하는 해시 (실제 해시 함수는 중요하지 않으며 일관성이 있습니다).

분명히 이것은 전체 회전과 정렬을 실제로 수행하지 않음으로써 크게 최적화 될 수 있습니다. 어떤 회전이 먼저 분류되는지 알 수있는 즉시 멈출 수 있지만 원칙은 동일합니다.

다른 팁

모든 회전을 XOR에 비트를 비트 할 수 있습니다. 즉, 대칭 식별자가됩니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top