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.1.tar.gz (17.6 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.1-py3-none-any.whl (20.4 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: rdgc-0.5.1.tar.gz
  • Upload date:
  • Size: 17.6 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.1.tar.gz
Algorithm Hash digest
SHA256 f19b4327ceccbe9bde68850f4ed5b9c10f69f0285c2b20c83be6b38e8ccde358
MD5 89ea6724f19ab528340fa911fdb15892
BLAKE2b-256 b56867583c73457c0799ee02292a83ab8d0373e5a9280fe6c4ced3a2098f147a

See more details on using hashes here.

File details

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

File metadata

  • Download URL: rdgc-0.5.1-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.1-py3-none-any.whl
Algorithm Hash digest
SHA256 ea50fdf31578c4a664ce66c4604873455ad751290fb014726616e54135b16170
MD5 75845d0377a6703530fc6923e5ed7cc3
BLAKE2b-256 f0a45fc4011ef2ab06eae19d0b9494b6695f229e34272f5b3ce9d71d8b4d8e2c

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