[Event "?"]
[Site "?"]
[Date "????.??.??"]
[Round "?"]
[White "?"]
[Black "?"]
[Result "0-1"]
1. e4 d5 2. exd5 Qxd5 3. c4 Qe5+ 4. Be2 g6 5. Nf3 Qe6 6. d4 c6 7. d5 cxd5 8. cxd5 Qe4 9. Nc3 Qf5 10. O-O Nf6 11. Bb5+ Bd7 12. a4 Nc6 13. Nh4 Qe5 14. dxc6 Bxc6 15. Re1 Ne4 16. f3 Bxb5 17. Nxb5 Rd8 18. Qb3 e6 19. Rxe4 Bc5+ 20. Kf1 Qxh2 21. Rxe6+ Kf8 22. Bh6+ Kg8 23. Qc3 Qg1+ 24. Ke2 Qf2# 0-1
< /code>
Шахматная игра под текущими стандартными ограничениями не должна превышать 5899 движений (источник). Самая длинная записанная и оцененная шахматная игра в истории составила 269 движений (источник). Я кодировал в Python и экспериментировал с PGNS как строки, потенциально для использования в веб -приложении с помощью метода GET. /> вниз? Я видел решения, использующие Zlib и Base64, но они не обязательно кажутся оптимизированными для моей конкретной ситуации. Является ли мой лучший
курс для пользовательского кода-это функция для сокращения строки, основанной на моих
, описанных ограничения? Stackoverflow Gurus, чтобы взлететь, и школа меня за 5 минут. Не показывать пощады, банда - все будет в порядке. < /P>
Пример выше, приведенный выше основной линии игры, которая длилась 24 хода. Порции, представляющие ходы в игре, составляют около 287 символов. Это простое соотношение, расширенное до 500 движений, дало бы строку, возможно, 6500 символов длиной. /> Набор символов, защищенных от URL,-это: ([0-9], [aa-zz],-, _,. Шахматы создают дискретный набор строк минимальной длины.[Result "*"]\n\n
Нарисование или отставка после одного хода изменит начало строки, но также добавит 2 символа для победы/проигрыша:
Также данные естественным образом соответствуют другим моделям и ограничениям, но я не уверен, как их использовать для более эффективного сжатия/кодирования. Пожалуйста/спасибо!
Для представления шахматных игр в виде струн можно использовать портативную игру (PGN). Похоже: < /p> [code][Event "?"] [Site "?"] [Date "????.??.??"] [Round "?"] [White "?"] [Black "?"] [Result "0-1"]
1. e4 d5 2. exd5 Qxd5 3. c4 Qe5+ 4. Be2 g6 5. Nf3 Qe6 6. d4 c6 7. d5 cxd5 8. cxd5 Qe4 9. Nc3 Qf5 10. O-O Nf6 11. Bb5+ Bd7 12. a4 Nc6 13. Nh4 Qe5 14. dxc6 Bxc6 15. Re1 Ne4 16. f3 Bxb5 17. Nxb5 Rd8 18. Qb3 e6 19. Rxe4 Bc5+ 20. Kf1 Qxh2 21. Rxe6+ Kf8 22. Bh6+ Kg8 23. Qc3 Qg1+ 24. Ke2 Qf2# 0-1 < /code> Шахматная игра под текущими стандартными ограничениями не должна превышать 5899 движений (источник). Самая длинная записанная и оцененная шахматная игра в истории составила 269 движений (источник). Я кодировал в Python и экспериментировал с PGNS как строки, потенциально для использования в веб -приложении с помощью метода GET. /> вниз? Я видел решения, использующие Zlib и Base64, но они не обязательно кажутся оптимизированными для моей конкретной ситуации. Является ли мой лучший курс для пользовательского кода-это функция для сокращения строки, основанной на моих , описанных ограничения? Stackoverflow Gurus, чтобы взлететь, и школа меня за 5 минут. Не показывать пощады, банда - все будет в порядке. < /P> Пример выше, приведенный выше основной линии игры, которая длилась 24 хода. Порции, представляющие ходы в игре, составляют около 287 символов. Это простое соотношение, расширенное до 500 движений, дало бы строку, возможно, 6500 символов длиной. /> Набор символов, защищенных от URL,-это: ([0-9], [aa-zz],-, _,. Шахматы создают дискретный набор строк минимальной длины.[Result "*"]\n\n [/code] Нарисование или отставка после одного хода изменит начало строки, но также добавит 2 символа для победы/проигрыша: [code][Result "1-0"]\n\n [/code] и розыгрыш, "1/2-1/2", еще не добавит больше символов. Мы рассмотрим недействительную любую строку PGN, которая содержит результат, но не движется.[code][Result "*"]\n\n1. a3 * [/code] Также данные естественным образом соответствуют другим моделям и ограничениям, но я не уверен, как их использовать для более эффективного сжатия/кодирования. Пожалуйста/спасибо!