Skip to main content

Balanced diversity solver xoxo to the square.

Project description

XOXO

Balanced diversity solver xoxo to the square.

License: MIT | Country of origin: Switzerland | Export control classification number(ECCN): EAR99

Third party dependencies are documented in the folder third-party.

version downloads wheel supported-versions supported-implementations maintenance-status

Documentation

User and developer documentation of xoxo.

Bug Tracker

Any feature requests or bug reports shall go to the todos of xoxo.

Primary Source repository

The main source of xoxo is on a mountain in central Switzerland. We use distributed version control (git). There is no central hub. Every clone can become a new source for the benefit of all. The preferred public clones of xoxo are:

  • on codeberg - a democratic community-driven, non-profit software development platform operated by Codeberg e.V.
  • at sourcehut - a collection of tools useful for software development.

Contributions

Please do not submit "pull requests" (I found no way to disable that "feature" on GitHub). If you like to share small changes under the repositories license please kindly do so by sending a patchset. You can either send such a patchset per email using git send-email or if you are a sourcehut user by selecting "Prepare a patchset" on the summary page of your fork at sourcehut.

Example

Given the input file:

❯ cat test/fixtures/grid_s_1.txt
O
X
OX   X
 XX
   OO
XXO

for clarity showing the dump to expose the regularity:

❯ xxd -c 7 test/fixtures/grid_s_1.txt
00000000: 4f20 2020 2020 0a  O     .
00000007: 5820 2020 2020 0a  X     .
0000000e: 4f58 2020 2058 0a  OX   X.
00000015: 2058 5820 2020 0a   XX   .
0000001c: 2020 204f 4f20 0a     OO .
00000023: 5858 4f20 2020 0a  XXO   .

xoxo will try to solve the puzzle in a diverse but balanced way:

❯ xoxo test/fixtures/grid_s_1.txt
Problem:

,---+---+---+---+---+---,
| O |   |   |   |   |   |  1
|---+---+---+---+---+---|
| X |   |   |   |   |   |  2
|---+---+---+---+---+---|
| O | X |   |   |   | X |  3
|---+---+---+---+---+---|
|   | X | X |   |   |   |  4
|---+---+---+---+---+---|
|   |   |   | O | O |   |  5
|---+---+---+---+---+---|
| X | X | O |   |   |   |  6
*---+---+---+---+---+---*
  1   2   3   4   5   6


Solution:

,---+---+---+---+---+---,
| O | O | X | O | X | X |  1
|---+---+---+---+---+---|
| X | O | O | X | X | O |  2
|---+---+---+---+---+---|
| O | X | O | X | O | X |  3
|---+---+---+---+---+---|
| O | X | X | O | X | O |  4
|---+---+---+---+---+---|
| X | O | X | O | O | X |  5
|---+---+---+---+---+---|
| X | X | O | X | O | O |  6
*---+---+---+---+---+---*
  1   2   3   4   5   6

More in the usage documentation

Status

Experimental.

Note The default branch is default.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

xoxo-2023.10.21.tar.gz (10.3 kB view details)

Uploaded Source

Built Distribution

xoxo-2023.10.21-py3-none-any.whl (7.7 kB view details)

Uploaded Python 3

File details

Details for the file xoxo-2023.10.21.tar.gz.

File metadata

  • Download URL: xoxo-2023.10.21.tar.gz
  • Upload date:
  • Size: 10.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.12

File hashes

Hashes for xoxo-2023.10.21.tar.gz
Algorithm Hash digest
SHA256 8e790d138c487c8e2badc2d6710def9100765e0db14628172fe286f28a9255b1
MD5 01a949681cbf6635879022e13251a3f3
BLAKE2b-256 a8d6b73a6b47c6900c4b5f6593c724d9b6de004f4a74f0bcbd0c6dad87fee626

See more details on using hashes here.

File details

Details for the file xoxo-2023.10.21-py3-none-any.whl.

File metadata

  • Download URL: xoxo-2023.10.21-py3-none-any.whl
  • Upload date:
  • Size: 7.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.12

File hashes

Hashes for xoxo-2023.10.21-py3-none-any.whl
Algorithm Hash digest
SHA256 bffcd3930aff655f13f68cace457501d443f11302f5bb58a5d5869e54ba39211
MD5 c8611a3ce324f430f229aa1e000f5072
BLAKE2b-256 c497b10028ba4f00c47a0dab817494b9b2597540647576ac502c3b4fc5fa6add

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page