Toggle menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

Slurpys

From ZeroWiki

원문보기


About Slurpys

스러피(Slurpy)란 어떠한 속성이 존재하는 문자열이다. 문자열을 읽어서 스러피가 존재하는지를 판단하는 프로그램을 작성해야 한다.


스럼프(Slump)는 다음 속성을 갖는 문자열이다.

  1. 첫 번째 문자가 'D'또는 'E'이다.
  1. 첫 번째 문자 뒤에는 하나 이상의 'F'가 나온다.
  1. 하나 이상의 'F'뒤에는 또 다른 스럼프나 'G'가 온다. 스럼프는 'F'끝에 오는 스럼프나 cpp 'G'로 끝난다. 예를 들어, DFFEFFFG는 첫 번째 문자가 cpp 'D'로 시작하고 두 개의 'F'가 나오며, 또 다른 스럼프 'EFFFG'로 끝난다.
  1. 위의 경우가 아니면 스럼프가 아니다.

스림프(Slimp)는 다음 속성을 갖는 문자열이다.

  1. 첫 번째 문자는 'A'이다.
  1. 두 개의 문자로만 된 스림프면, 두 번째 문자는 'H'이다.
  1. 두 개의 문자로 된 스림프가 아니면 다음 형식 중의 하나가 된다.
 a) 'A' + 'B' + 스림프 + 'C'.
 b) 'A' + 스럼프 + 'C'.
  1. 위의 경우가 아니면 스림프가 아니다.

스러피(Slurpy)는 스림프(Slimp) 뒤에 스럼프(Slump)로 구성되는 문자열이다.

Slumps : DFG, EFG, DFFFFFG, DFDFDFDFG, DFEFFFFFG
Not Slumps: DFEFF, EFAHG, DEFG, DG, EFFFFDG
Slimps: AH, ABAHC, ABABAHCC, ADFGC, ADFFFFGC, ABAEFGCC, ADFDFGC
Not Slimps: ABC, ABAH, DFGC, ABABAHC, SLIMP, ADGC
Slurpys: AHDFG, ADFGCDFFFFFG, ABAEFGCCDFEFFFFFG
Not Slurpys: AHDFGA, DFGAH, ABABCC

Input

입력될 문자열의 개수를 나타내는 정수 N 이 1 ~ 10의 범위로 우선 입력된다. 다음 줄부터 N개의 문자열이 입력된다. 문자열은 1 ~ 60 개의 알파벳 문자로 구성된다.

output

첫 줄에는 OUTPUT" 을 출력한다. N 개의 문자열 입력에 대해서 각 문자열이 스러피인지를 "YES" 또는 cpp"NO"로 표기한다. 마지막으로 OF OUTPUT"를 출력한다.

Sample Input

2
AHDFG
DFGAH

Sample Output

SLURPYS OUTPUT
YES
NO
END OF OUTPUT


풀이

작성자 사용언어 개발시간 코드
문보창 C++ 2시간 Slurpys/문보창
황재선 Python 1시간 46분 Slurpys/황재선
신재동 Python 52분 Slurpys/신재동
JuNe Python 1시간 Seminar:Slurpys/JuNe
이상규 C++ 19분 Slurpys/이상규
김회영 C++ 1시간30분 Slurpys/김회영
강인수 Delphi 1시간 정도 Slurpys/강인수
박응용 Python 2시간 Slurpys/박응용
곽세환 C++ 2시간 Slurpys/곽세환
임인택 HaskellLanguage 측정못함(잡일에 치여 ㅠㅠ) Slurpys/임인택

쓰레드

정확하게 이름은 생각나지 않지만 디지털공학 시간에 예제로 해보았던 자판기나 신호등 문제의 접근 방법을 사용하면 재미 있을것 같습니다. - 이승한

이번 문제는 TDD를 강력 추천. --재동

저도 강추. 프로그래밍에 완전히 몰입되었고 구현하는 동안 즐거웠어요 -- 재선

말렸다. 2시간 30분이 지났지만 아직도 해결 못 했음... --Leonardong


문제분류