Giter Club home page Giter Club logo

problem-gen-template's Introduction

本仓库为出ACM题的简易模版

新建题目

  • 需要增加题目时, 可以复制problems中的题目并重命名为<your_prob>

数据生成

  • data-gen文件夹下所有文件必须保留(when all data is static, data_gen.py can be removed), 其中validator为数据格式验证, data_gen为数据生成, gen-config.csv为每组数据的参数, 使用参数的方法见模板题中的data_gen.py/validator.py, 其中第一列data_id为数据组号, 可以增加列数, 但每个数据必须为整数
  • gen-config中第二列is_static表示此数据是否为静态的, 若为静态的, 需要从data-gen/input文件夹下读取相应数据. 否则动态生成

文档

  • docs文件夹中存放题面题解等, 后续打包时此文件夹中文件会直接复制

标程

  • std文件夹中存放标程, 且必须要有一个命名为std.cpp的文件作为标准答案输出
  • 可以通过给标程程序添加 _ + 后缀 来限定此程序的时间, 例如std233_5.cpp的时限为5s(后缀只能是整数), 若不加后缀默认1s时限. 注意, std.cpp不能添加后缀
  • 可以通过设置环境变量CUR_PROB=<your_prob>来更改当前工程调试的题目
  • 可通过cmake build完成后, 直接运行${CUR_PROB}/std文件夹中的各个标程, 具体可查看CMakeList.txt

测试

  • checker.py/batch-test.sh用于检查各个标程间的答案是否正确, 在使用前务必设置CUR_PROB=<your_prob>
  • 当题目被修改后, 将会触发github action的自动测试

打包

  • pack-config.txt配置了打包后各个文件夹的名称及需要打包的题目
  • pack.py为打包脚本
  • 当题目被更改或打包配置被更改时, 会触发自动打包程序并发布github release

problem-gen-template's People

Contributors

santongding avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.