랩탑 타이핑의 다음 혁명은 2014 년 4 월 1 일 SwiftKey에 의해 발표되었습니다 . 그러나 스 와이 핑 나노 클론을 작성하는 첫 번째 사람이되고 싶지만 실제 텍스트 라이브러리에 대한 좋은 스 와이프 텍스트를 찾을 수 없으므로 기다릴 수 없으므로 여기에서 묻습니다.
태스크
텍스트를 스 와이프하여 실제 텍스트에 해당하는 프로그램을 작성하십시오. 예:
Input: hgrerhjklo
Output: hello
사용자가 할 때 :
다른 예 :
Input: wertyuioiuytrtjklkjhgfd
Output: world
Input: poiuytrtyuioiugrewsasdfgbhnmkijnbg
Output: programming
Input: poiuygfdzxcvhjklkjhgres
Output: puzzles
Input: cvhjioiugfde
Output: code
Input: ghiolkjhgf
Output: golf
규칙
- 프로그램은 stdin 또는 argv에서 스 와이프 한 '단어'를받습니다.
- 스 와이프 된 입력의 첫 글자와 마지막 글자는 실제 단어의 첫 글자와 마지막 글자와 동일합니다.
- 사용자가 합리적인 직선을 만들 것이라고 가정 할 수 있지만 샘플 데이터를 사용하여이를 확인할 수 있습니다 (샘플 데이터를 만들고 최종 테스트 데이터를 만들 것입니다)
- 모호한 입력의 경우 두 출력 중 하나를 선택할 수 있지만 테스트 데이터에서 모든 모호성을 제거하려고합니다.
- 이 단어는 이 단어 목록에 있지만 스 와이프합니다. 단어 목록은 현재 디렉토리에 있으며 읽을 수 있습니다 (줄 바꿈으로 구분, 이름
wordlist
없음, 확장자 없음). - 스 와이프에는 소문자 알파벳 만 포함됩니다
- 사용자가 키를 일시 중지하면 스 와이프에 중복 문자가 포함될 수 있습니다.
- 프로그램은 stdout에서 출력해야합니다 (대소 문자는 중요하지 않음)
- 프로그램은
0
리턴 코드로 리턴 해야합니다. - 실행 명령, 컴파일 명령 (필요한 경우), 이름 및 사용할 입력 경로를 제공해야합니다.
- 표준 허점이 적용되지만 도움이되지 않을 수 있습니다
- 내장되지 않은 라이브러리는 허용되지 않습니다
- 결정적이지 않은 골프 / 난독 처리 된 솔루션 선호
- 파일 쓰기, 네트워킹 등이 없습니다.
- 코드는 1 초 이내에 실행되어야합니다 (코드 당 한 번 실행)
- 스코어링 실행은 4 개의 가상 코드 (2 개의 실제 코드)가있는 Intel i7 Haswell 프로세서에서 실행되므로 필요한 경우 스레드를 사용할 수 있습니다
- 5000 바이트의 최대 코드 길이
- 사용하는 언어에는 Linux 용 무료 (시험판이 아님) 버전이 있어야합니다 (중요한 경우 Linux Linux)
승리 기준
- 우승자는 가장 정확한 솔루션입니다 ( 제공된 테스트 목록을 사용하여 제어 프로그램에 의해 평가됨)
- 인기는 타이 브레이커
- 점수 표는 며칠마다 업데이트됩니다
- 시간 초과 및 충돌이 실패로 계산
- 이 도전은 인기도에 따라 2 주 이상 지속될 것입니다.
- 최종 점수는 무작위로 선택된 다른 단어 목록 (동일한 단어 목록에서 동일한 길이)을 사용합니다.
다른
- 제어 프로그램을 사용하여 프로그램을 테스트 할 수 있습니다
- 초조하고 프로그램을 신속하게 업데이트 / 추가 하려면 https://github.com/matsjoyce/codegolf-swipe-type/blob/master 에서 문제를 시작하거나 풀 요청 하십시오.
- 항목은 https://github.com/matsjoyce/codegolf-swipe-type/blob/master/entries 에서 유지 보수됩니다.
- 각 프로그램 실행 로그는 https://github.com/matsjoyce/codegolf-swipe-type/blob/master/logs에 유지됩니다.
- https://github.com/matsjoyce/codegolf-swipe-type/blob/master/log.log의 기본 로그
- 각 키의 위치는이라는 현재 디렉토리에 csv 파일로 제공되며
keypos.csv
x 및 y 값은 다음과 관련하여 제공됩니다Q
( https://github.com/matsjoyce/codegolf-swipe-type/blob/master/ 참조). keypos.csv ) - 각 키는 1.5 x 1.5cm입니다 (keypos.csv와 동일한 단위).
현재 점수 보드
Three Pass Optimizer:Errors: 0/250 Fails: 7/250 Passes: 243/250 Timeouts: 0/250
Corner Sim: Errors: 0/250 Fails: 9/250 Passes: 241/250 Timeouts: 0/250
Discrete Fréchet Distance:Errors: 0/250 Fails: 17/250 Passes: 233/250 Timeouts: 0/250
Turnaround: Errors: 0/250 Fails: 18/250 Passes: 232/250 Timeouts: 0/250
Direction Checker: Errors: 0/250 Fails: 19/250 Passes: 231/250 Timeouts: 0/250
Regex Solver: Errors: 0/250 Fails: 63/250 Passes: 187/250 Timeouts: 0/250
Corner Sim: Errors: 0/250 Fails: 10/250 Passes: 240/250 Timeouts: 0/250
Three Pass Optimizer:Errors: 2/250 Fails: 14/250 Passes: 234/250 Timeouts: 0/250
Turnaround: Errors: 0/250 Fails: 16/250 Passes: 234/250 Timeouts: 0/250
Direction Checker: Errors: 0/250 Fails: 17/250 Passes: 233/250 Timeouts: 0/250
Discrete Fréchet Distance:Errors: 0/250 Fails: 18/250 Passes: 232/250 Timeouts: 0/250
Regex Solver: Errors: 0/250 Fails: 67/250 Passes: 183/250 Timeouts: 0/250
파이널 런
Corner Sim: Errors: 0/250 Fails: 14/250 Passes: 236/250 Timeouts: 0/250
Three Pass Optimizer:Errors: 0/250 Fails: 18/250 Passes: 232/250 Timeouts: 0/250
Direction Checker: Errors: 0/250 Fails: 20/250 Passes: 230/250 Timeouts: 0/250
Turnaround: Errors: 0/250 Fails: 23/250 Passes: 227/250 Timeouts: 0/250
Discrete Fréchet Distance:Errors: 0/250 Fails: 30/250 Passes: 220/250 Timeouts: 0/250
Regex Solver: Errors: 0/250 Fails: 55/250 Passes: 195/250 Timeouts: 0/250
모두와 hgfdsasdertyuiopoiuy swertyuiopoijnhg 잘 했어요!
l
. 두 배가되지 않습니다.