소개
Kitty Kattis CLI는 Kattis 코딩 챌린지 플랫폼을 위한 명령줄 인터페이스(CLI) 도구입니다. avborup이 개발했으며, 터미널에서 직접 문제를 가져오고, 테스트하고, 제출할 수 있게 해줍니다. 이 도구는 Rust로 작성되었으며 MIT 라이선스로 배포됩니다.
상세정보
문제 가져오기
kitty get <PROBLEM ID> 명령으로 문제를 가져올 수 있습니다. 문제 ID는 Kattis 문제 URL에서 확인할 수 있으며, 가져온 문제는 해당 ID의 디렉토리에 저장되고 공식 테스트 케이스가 포함된 test 하위 디렉토리가 생성됩니다.
테스트 실행
kitty test [PATH TO PROBLEM] 명령으로 작성한 솔루션을 테스트 케이스에 대해 실행할 수 있습니다. 필요한 경우 컴파일 후 각 테스트 샘플을 표준 입력으로 전달하고 결과를 표시합니다.
제출
kitty submit [PATH TO PROBLEM] 명령으로 솔루션을 Kattis에 제출할 수 있습니다. 제출을 위해서는 Kattis에서 제공하는 .kattisrc 파일이 필요하며, 이 파일은 인증 자격 증명과 호스트 정보를 포함합니다.
템플릿 지원
사용자 정의 템플릿을 정의하여 선호하는 프로그래밍 언어로 문제를 시작할 수 있습니다. kitty get --lang <LANG> 옵션을 사용하거나 기본 언어를 설정할 수 있습니다.
디버깅 도구
kitty debug input 명령으로 입력 생성기를 사용하여 자동으로 테스트 케이스를 생성하고 솔루션을 테스트할 수 있습니다. kitty debug answer 명령으로 다른 구현과 출력을 비교할 수 있습니다.
설치 및 시작
Windows에서는 PowerShell 설치 스크립트를 사용하거나, cargo를 통해 cargo install --git https://github.com/avborup/kitty로 설치할 수 있습니다. 또한 GitHub Releases에서 Windows, Linux, macOS용 사전 빌드된 바이너리를 다운로드할 수 있습니다. 설치 후 kitty --help로 사용 가능한 명령을 확인할 수 있습니다.
활용 예시
예를 들어, Kattis 문제 ‘ferryloading’을 가져오려면 kitty get ferryloading을 실행합니다. 솔루션을 작성한 후 kitty test로 테스트하고, kitty submit으로 제출할 수 있습니다. 또한 kitty langs로 설정된 언어 목록을 확인할 수 있습니다.
지원 환경
Windows, Linux, macOS에서 실행할 수 있으며, x64 아키텍처를 지원합니다. Rust로 작성되었지만 사전 빌드된 바이너리를 사용하면 Rust 환경이 필요하지 않습니다.
버전 및 업데이트
현재 버전은 0.9.0이며, kitty update 명령으로 업데이트할 수 있습니다.
라이선스 및 제한 사항
이 도구는 MIT 라이선스로 배포됩니다. 명령줄 인터페이스만 제공되며 그래픽 사용자 인터페이스(GUI)는 없습니다. 문제 가져오기, 제출 등의 네트워크 작업을 위해서는 인터넷 연결이 필요합니다.
시스템 요구사항
Windows, Linux, macOS · x64 · Rust (선택 사항, cargo 설치 시)


