요약
코드 골프가 좋습니다. 파이는 좋다 . 두 가지를 합치면 좋은 일만 일어날 수 있습니다.
명세서
이 도전에서 당신은 파이 가게를 관리합니다. 사용자는 다섯 개 가지 명령을 입력 할 수있을 것입니다 : list, count, buy, sell,와 exit. 각 사양은 다음과 같습니다.
list소유 한 모든 파이의 목록과 인쇄 횟수를 인쇄하십시오.
|양쪽에 공간을두고 분리 하고 채 웁니다.|정렬해야합니다. 파이 금액은 음수 일 수 있습니다 (즉, 누군가에게 파이를 지불해야 함:(). 예를 들면 다음과 같습니다.| apple | 500 | | blueberry | 2 | | cherry | -30 |
count [type]{{type}}파이가 몇 개인 지 인쇄하십시오 . 인쇄 "{{type}}파이 가 없습니다 !" 없는 경우.{{type}}항상 정규 표현식과 일치합니다\w+(즉, 항상 단일 단어입니다). 예를 들어, 위의 예제 목록에 파이 양이 표시된 경우> count apple 500 > count peach There is no peach pie!
buy [n] [type]추가
{{n}}의 수에{{type}}파이, 그것을 인쇄 할 수 있습니다.{{type}}파이가 없으면 작성하십시오 .{{n}}항상 정규 표현식과 일치합니다[0-9]+(즉, 항상 숫자입니다). 다음은 다른 예입니다 (이전 예와 동일한 파이 인벤토리 사용).> count blueberry 2 > buy 8 blueberry 10
sell [n] [type]빼기
{{n}}의 수에서{{type}}파이, 그것을 인쇄 할 수 있습니다.{{type}}파이가 없으면 작성하십시오 . 파이는 부정적 일 수 있습니다 (아뇨, 누군가 파이를 빚진다는 의미입니다!).> sell 15 blueberry -5 > buy 5 blueberry 0
exit"파이 가게가 문을 닫았습니다!" 프로그램을 종료하십시오.
> exit The pie store has closed!
추가 설명
- 존재하지 않는 함수가 호출되면 (첫 번째 단어) "이것은 유효한 명령이 아닙니다"를 인쇄하십시오.
- 기존 함수가 유효하지 않은 인수 (첫 번째 단어 뒤의 단어)와 함께 호출 된 경우 프로그램 작동 방식은 중요하지 않습니다. "잘못된 인수"는 너무 많은 인수, 너무 작은 인수,
{{n}}숫자가 아닌 등을 포함합니다. - 파이는 좋다.
- 입력은 출력과 구별되어야합니다. 명령 행 / 터미널 / 쉘 / 기타 텍스트 기반 항목에서 프로그램을 실행중인 경우 "
> "("보다 큼 "기호 및 공백) 또는 다른 쉘 입력 접두어를 입력해야합니다. - 파이는 좋다.
이 모든 설명이 충분하지 않은 경우 샘플 출력은 다음과 같습니다.
> list > buy 10 apple 10 > sell 10 blueberry -10 > list | apple | 10 | | blueberry | -10 | > count apple 10 > count peach There is no peach pie! > exit The pie store has closed!당신은 / 판매 파이를 구입하고 그물 카운트가 될 경우
0, 당신은 할 수 있습니다 중 하나 에 보관list여부, 당신은 할 수 있습니다 중 하나를 반환0또는There is no {{type}} pie!때 당신count을.- 이것은 코드 골프입니다 . 가장 짧은 코드가 승리합니다.
- 파이가 좋다고 언급 했습니까?
buy 1 apple와 sell 1 apple. 그리고 대신에 count apple반환 0하는 것이 유효 There is no apple pie!할까요?
