cyaron icon indicating copy to clipboard operation
cyaron copied to clipboard

CYaRon: Yet Another Random Olympic-iNformatics test data generator

Results 64 cyaron issues
Sort by recently updated
recently updated
newest added

加入生成树,返回格式为(父,子)元组的列表 默认是从 `1` 开始执行 DFS(BFS 风格),可以通过指定容器实现 BFS 生成树或最小生成树。 可以通过传入 `from_weight` 决定是否显示边权和如何显示,默认是 `lambda w: None`,即不显示。 ```python import random import heapq import collections from cyaron.graph import * random.seed(0, 2) class Queue: def...

允许用户自定义打乱点集和边集的函数(仅在 `shuffle` 为真时被调用) 方便只打乱点或边,也可以获取某个点被打乱后映射到的位置。 https://github.com/luogu-dev/cyaron/issues/101

无法正确计算非简单多边形(有自交)的面积 ```python from cyaron import * p = Polygon( [(-3, 4), (1.5, 3), (-6, -2), (-3, -4)] ) print(p.area()) # output: 3.0 ``` 如图,显然面积为 $15$。 ![2024-10-04_19-08](https://github.com/user-attachments/assets/8eb3c752-11ee-4313-9dff-a60c135a0015) 即使这种情形在应用时不常见,是否应在文档中警告,或者在代码逻辑中加入判断?

C++的浮点数精度是四舍五入的,python中round是银行家舍入,对于5时的处理策略是不一样的,能否处理一下呢

出题时遇到这个,自己不太会写 python,困扰了我很久

例如 `repeated_edges=...` 容易记成 `repeated_edge`,而库中的函数签名设计对 IDE 也不友好。这可能导致出现用户预期外的行为。 建议将所有参数都记录在函数签名中,为了向下兼容保留 `*args` 和 `**kwargs`,并在此类参数被使用时报警。

语句`cyaron.Graph.DAG(10, 90, repeated_edges=False)` 将导致无限循环。 https://github.com/luogu-dev/cyaron/blob/0865426a68124828988f60c8b0e5d5db5cad8cde/cyaron/graph.py#L609-L615 应把 610 行的 `not loop` 换成 `loop`。

如题,增加了对均匀生成高维区间查询的支持,已经经过测试

将 `{sys.executable}` 相关代码实现路径转义,保证 shell 解析不会错误