tcmaker


Nametcmaker JSON
Version 0.0.7 PyPI version JSON
download
home_pagehttps://github.com/csvega/tcmaker
Summarytestcase maker for online judge
upload_time2025-01-26 13:40:33
maintainerNone
docs_urlNone
authorcsvega
requires_python>=3.6
licenseNone
keywords testcase online judge oj hustoj
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            ### 1. 설치 방법
```
pip install tcmaker
```

### 2. 데이터 형식 지정 예시
실행 폴더에 `format.txt`파일이 있어야 합니다. 이 파일에는 데이터의 형식을 지정합니다.

```format.txt
[Var]
n: 1~100
x: -1000~1000
m: 1~n
y: 0~1

[Format]
n m
drept(n,x,' ')
rept(m,y,'\n')
```
여기서 `rept(반복횟수,변수명,구분자)` 명령이 있습니다. `drept`명령은 사용법은 동일한데 데이터의 중복없이 반복하는 명령입니다. 값의 범위는 변수 정의에 따릅니다.

위 명령으로 생성되는 데이터의 예시
```
5 4
-12 123 2 -982
0
1
1
0
```

### 3. 실행 방법 예시
아래와 같은 파일을 만들어서 실행합니다.
```
import tcmaker

start_n = 1    # 데이터 시작 번호
end_n = 10     # 데이터 끝 번호

for i in range(start_n, end_n+1):
  format_file = 'format.txt'        # 데이터 형식 지정 파일명
  input_file = f'test{i:02d}.in'    # 만들 입력 파일명
  output_file = f'test{i:02d}.out'  # 만들 출력 파일명
  run_file = 'solve.py'             # 정답 코드 파일명
  terminal = 'PowerShell'           # 터미널 종류(PowerShell 또는 아무거나)

  tcm = tcmaker.tcmaker()
  tcm.generate(format_file, input_file, output_file, run_file, terminal)
```

### 4. 기타
아직 부족한 점이 많습니다. 변수명 정의 또는 `rept`명령에 변수와 수식 혼용 사용가능합니다. 차차 업데이트하도록 하겠습니다.

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/csvega/tcmaker",
    "name": "tcmaker",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.6",
    "maintainer_email": null,
    "keywords": "testcase, online judge, OJ, hustoj",
    "author": "csvega",
    "author_email": "vega4792@gmail.com",
    "download_url": "https://files.pythonhosted.org/packages/8e/57/0d6e001a9e60d0f2252bbb3b3bb3e665710dfd1e523e7d27f4a3a0df5d42/tcmaker-0.0.7.tar.gz",
    "platform": null,
    "description": "### 1. \uc124\uce58 \ubc29\ubc95\r\n```\r\npip install tcmaker\r\n```\r\n\r\n### 2. \ub370\uc774\ud130 \ud615\uc2dd \uc9c0\uc815 \uc608\uc2dc\r\n\uc2e4\ud589 \ud3f4\ub354\uc5d0 `format.txt`\ud30c\uc77c\uc774 \uc788\uc5b4\uc57c \ud569\ub2c8\ub2e4. \uc774 \ud30c\uc77c\uc5d0\ub294 \ub370\uc774\ud130\uc758 \ud615\uc2dd\uc744 \uc9c0\uc815\ud569\ub2c8\ub2e4.\r\n\r\n```format.txt\r\n[Var]\r\nn: 1~100\r\nx: -1000~1000\r\nm: 1~n\r\ny: 0~1\r\n\r\n[Format]\r\nn m\r\ndrept(n,x,' ')\r\nrept(m,y,'\\n')\r\n```\r\n\uc5ec\uae30\uc11c `rept(\ubc18\ubcf5\ud69f\uc218,\ubcc0\uc218\uba85,\uad6c\ubd84\uc790)` \uba85\ub839\uc774 \uc788\uc2b5\ub2c8\ub2e4. `drept`\uba85\ub839\uc740 \uc0ac\uc6a9\ubc95\uc740 \ub3d9\uc77c\ud55c\ub370 \ub370\uc774\ud130\uc758 \uc911\ubcf5\uc5c6\uc774 \ubc18\ubcf5\ud558\ub294 \uba85\ub839\uc785\ub2c8\ub2e4. \uac12\uc758 \ubc94\uc704\ub294 \ubcc0\uc218 \uc815\uc758\uc5d0 \ub530\ub985\ub2c8\ub2e4.\r\n\r\n\uc704 \uba85\ub839\uc73c\ub85c \uc0dd\uc131\ub418\ub294 \ub370\uc774\ud130\uc758 \uc608\uc2dc\r\n```\r\n5 4\r\n-12 123 2 -982\r\n0\r\n1\r\n1\r\n0\r\n```\r\n\r\n### 3. \uc2e4\ud589 \ubc29\ubc95 \uc608\uc2dc\r\n\uc544\ub798\uc640 \uac19\uc740 \ud30c\uc77c\uc744 \ub9cc\ub4e4\uc5b4\uc11c \uc2e4\ud589\ud569\ub2c8\ub2e4.\r\n```\r\nimport tcmaker\r\n\r\nstart_n = 1    # \ub370\uc774\ud130 \uc2dc\uc791 \ubc88\ud638\r\nend_n = 10     # \ub370\uc774\ud130 \ub05d \ubc88\ud638\r\n\r\nfor i in range(start_n, end_n+1):\r\n  format_file = 'format.txt'        # \ub370\uc774\ud130 \ud615\uc2dd \uc9c0\uc815 \ud30c\uc77c\uba85\r\n  input_file = f'test{i:02d}.in'    # \ub9cc\ub4e4 \uc785\ub825 \ud30c\uc77c\uba85\r\n  output_file = f'test{i:02d}.out'  # \ub9cc\ub4e4 \ucd9c\ub825 \ud30c\uc77c\uba85\r\n  run_file = 'solve.py'             # \uc815\ub2f5 \ucf54\ub4dc \ud30c\uc77c\uba85\r\n  terminal = 'PowerShell'           # \ud130\ubbf8\ub110 \uc885\ub958(PowerShell \ub610\ub294 \uc544\ubb34\uac70\ub098)\r\n\r\n  tcm = tcmaker.tcmaker()\r\n  tcm.generate(format_file, input_file, output_file, run_file, terminal)\r\n```\r\n\r\n### 4. \uae30\ud0c0\r\n\uc544\uc9c1 \ubd80\uc871\ud55c \uc810\uc774 \ub9ce\uc2b5\ub2c8\ub2e4. \ubcc0\uc218\uba85 \uc815\uc758 \ub610\ub294 `rept`\uba85\ub839\uc5d0 \ubcc0\uc218\uc640 \uc218\uc2dd \ud63c\uc6a9 \uc0ac\uc6a9\uac00\ub2a5\ud569\ub2c8\ub2e4. \ucc28\ucc28 \uc5c5\ub370\uc774\ud2b8\ud558\ub3c4\ub85d \ud558\uaca0\uc2b5\ub2c8\ub2e4.\r\n",
    "bugtrack_url": null,
    "license": null,
    "summary": "testcase maker for online judge",
    "version": "0.0.7",
    "project_urls": {
        "Homepage": "https://github.com/csvega/tcmaker"
    },
    "split_keywords": [
        "testcase",
        " online judge",
        " oj",
        " hustoj"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "0771d490a81a3db099d70177e2d17210a60b5a23a80384fed75836e99ece7150",
                "md5": "ca4f36af2252fbbfb61642afcbdd3282",
                "sha256": "3961a7ce726c9d47124f088ca1d43cacfe03b4fe9eda25725592c7d193d8dee1"
            },
            "downloads": -1,
            "filename": "tcmaker-0.0.7-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "ca4f36af2252fbbfb61642afcbdd3282",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.6",
            "size": 4280,
            "upload_time": "2025-01-26T13:40:31",
            "upload_time_iso_8601": "2025-01-26T13:40:31.486182Z",
            "url": "https://files.pythonhosted.org/packages/07/71/d490a81a3db099d70177e2d17210a60b5a23a80384fed75836e99ece7150/tcmaker-0.0.7-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "8e570d6e001a9e60d0f2252bbb3b3bb3e665710dfd1e523e7d27f4a3a0df5d42",
                "md5": "0418de473d6343339f95ea9a689ae387",
                "sha256": "f240d0328bbb52647acb53cece6904db831190b339f600e5c8737e868788e455"
            },
            "downloads": -1,
            "filename": "tcmaker-0.0.7.tar.gz",
            "has_sig": false,
            "md5_digest": "0418de473d6343339f95ea9a689ae387",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.6",
            "size": 3634,
            "upload_time": "2025-01-26T13:40:33",
            "upload_time_iso_8601": "2025-01-26T13:40:33.534589Z",
            "url": "https://files.pythonhosted.org/packages/8e/57/0d6e001a9e60d0f2252bbb3b3bb3e665710dfd1e523e7d27f4a3a0df5d42/tcmaker-0.0.7.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-01-26 13:40:33",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "csvega",
    "github_project": "tcmaker",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": false,
    "lcname": "tcmaker"
}
        
Elapsed time: 1.23160s