Skip to main content

RDGC Data Generator for Contests

Project description

RDGC Data Generator for Contests

Release Last Commit github PyPI sata-license

GitHub Issues or Pull Requests GitHub Downloads Stars Forks

由于我现在常用的数据生成器在 API 设计上令人迷惑,我决定自己编写一个生成器。

features

目前计划支持的特性:

  • 生成随机图
    • 随机图
    • 空图(null graph)
    • 完全图(complete graph)
    • 竞赛图(tournament graph)
    • 随机树(随机父亲)
    • 随机树(随机连边)
    • 二叉树(binary tree)
    • 链图(chain graph)
    • 菊花图(star graph)
    • 圈图(cycle graph)
    • 轮图(wheel graph)
    • 从度数序列随机生成图(蒙特卡洛方法)
    • 生成 $k$-正则图( $k$-regular Graph)
  • 生成特定类型的数字
    • 支持从范围中随机选择质数。
  • 生成特定类型的数字序列
    • 生成给定递推函数的序列(递归实现)
  • 调用 std 生成 ans 文件
  • 杂项
    • 从命令行参数获取随机种子
    • 批量将 CRLF 格式转换为 LF 格式

PyPI

项目上传了 PyPI,因此你可以使用:

pip install rdgc

来下载最新版。

项目也将同时上传到 Test PyPI,因此也可以:

pip install -i https://test.pypi.org/simple/ rdgc

当然,后者不是推荐行为。

Semantic Versioning

原则上,我是支持 语义化版本 的,但是由于现在项目随时可能出现 Bug 和 idea,并可能由于使 API 更可读而重构,因此将项目版本号维持在 0.x.x 以说明处于快速开发阶段。

计划在完成大部分 idea 后进行一次重构并将版本号改为 1.x.x

目前尽量遵循以下规范:

  • 若引入了重要的数据生成 API(被记录在 README 文件),则将次版本号递增;
  • 若加入了小的 API 或 Bug 修复,将修订号递增。

当然,暂时更可能看我心情。

License

项目没有额外声明的部分使用 SATA 许可证,如果你认为我的项目有用,请考虑在 Github 为我点赞。

项目的 API 设计参考了 CYaRon,如果有人认为我需要为此修改许可证,请联系我;后者的推荐方式是在 issue 中说明。

Pylint

项目使用 Pylint 检查 Python 语法。

全局禁用的检查包括:

  • line-too-long (C0301)
  • too-many-lines (C0302)
  • unnecessary-lambda-assignment (C3001)
  • too-many-public-methods (R0904)
  • too-many-return-statements (R0911)
  • too-many-arguments (R0913)
  • too-many-locals (R0914)
  • keyword-arg-before-vararg (W1113)

在测试脚本中禁用了所有出现的警告,包括但不限于注释缺失。

在项目主文件中禁用的警告使用具体名称而非代码。

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

rdgc-0.5.2.tar.gz (17.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

rdgc-0.5.2-py3-none-any.whl (20.4 kB view details)

Uploaded Python 3

File details

Details for the file rdgc-0.5.2.tar.gz.

File metadata

  • Download URL: rdgc-0.5.2.tar.gz
  • Upload date:
  • Size: 17.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.2

File hashes

Hashes for rdgc-0.5.2.tar.gz
Algorithm Hash digest
SHA256 ceb771129a230a935066719c75d2f666704619c648c92ca0affb23e773af9d61
MD5 d6809f31bf1b1c57729e295cda8522fc
BLAKE2b-256 7d0eadf76dbcf7dcf25a67a71bb9a1b370b2318b6e218ae173f6a20d762ab888

See more details on using hashes here.

File details

Details for the file rdgc-0.5.2-py3-none-any.whl.

File metadata

  • Download URL: rdgc-0.5.2-py3-none-any.whl
  • Upload date:
  • Size: 20.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.2

File hashes

Hashes for rdgc-0.5.2-py3-none-any.whl
Algorithm Hash digest
SHA256 44b85f8aa9a78c4ae1524231fc95d4e85666c5f6ed78ccc8a40a66ad015c6084
MD5 f835a33d64743ed0bcd92da838ce496c
BLAKE2b-256 bc528a58075addfcb93c1c1ac961e4960d8dc416cb13851db04c904ee7d71731

See more details on using hashes here.

Supported by

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