comp-prog-jp-library-standard / competitive-programming-library

競技プログラミング用共通ライブラリ
MIT License
46 stars 1 forks source link

ライブラリのディレクトリ構造を決める #21

Closed koba-e964 closed 6 years ago

koba-e964 commented 6 years ago

@asi1024, @koba-e964 の議論。

このような感じにしたい。

リポジトリディレクリ構造

bin: スクリプト類 (scripts とかにディレクトリ名を変えた方がいいかもしれない?)
  travis-tests.sh
  diff.sh: テスト用のdiff (浮動小数比較してくれるやつ) (シェルスクリプトじゃなくてもいい)

library: ライブラリを置くためのディレクトリ
  cpp: C++ のためのディレクトリ
    src: 各ライブラリのディレクトリ
      array: Array系のAPIを持ったもの全般
        segment_tree.cpp
        fenwick_tree.cpp
        rolling_hash.cpp
        suffix_array.cpp
        sparse_table.cpp
        z_algorithm.cpp
        persistent_array.cpp
        ...
      graph: グラフ系
        graph.hpp グラフの定義とか
        dijkstra.cpp
        … どうしよう (データ構造系とアルゴリズム系の切り分けとか)
      tree: 木系
        union_find.cpp
        lca.cpp
        partially_persistent_union_find.cpp
      types:
        mod.cpp
        big_integer.cpp
        fraction.cpp
      math: 数学系
        エラトステネスの篩
        素因数分解
          試し割り
          Pollard’s rho
          Lenstra’s elliptic curve factorization
        FFT, NTT
        mod_sqrt (Tonelli-Shanks)
      …: その他
    tests:
      array:  
        segment_tree
          DSL_2_A
            main.cpp
            tests (テストケースディレクトリorテストケースディレクトリへのsymlink)
          その他テスト用の問題
        fenwick_tree
          DSL_2_B
            main.cpp
            tests
          …
      ...
  rust: Rust のためのディレクトリ
  ...

testcases: テストケースを置くためのディレクトリ
  aoj: AOJ のテストケースを置くディレクトリ
    Reference.md: 参照元とかを書く
    0001
      1.in
      1.out
      2.in
      ...
  joi: JOIの過去問
  jag: JAGの問題

docs: GitHub pages を使うならここにリファレンス等を置く
LICENSE.md
README.md