E D R , A S I H C RSS

Slurpys

About Slurpys

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

1. 첫 번째 문자가 'D'또는 'E'이다.

2. 첫 번째 문자 뒤에는 하나 이상의 'F'가 나온다.

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

4. 위의 경우가 아니면 스럼프가 아니다.
----
스림프(Slimp)는 다음 속성을 갖는 문자열이다.

1. 첫 번째 문자는 'A'이다.

2. 두 개의 문자로만 된 스림프면, 두 번째 문자는 'H'이다.

3. 두 개의 문자로 된 스림프가 아니면 다음 형식 중의 하나가 된다.
~cpp 
 a) 'A' + 'B' + 스림프 + 'C'.
 b) 'A' + 스럼프 + 'C'.

4. 위의 경우가 아니면 스림프가 아니다.
----
스러피(Slurpy)는 스림프(Slimp) 뒤에 스럼프(Slump)로 구성되는 문자열이다.


~cpp 
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

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

Sample Input

~cpp 
2
AHDFG
DFGAH

Sample Output

~cpp 
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
----
문제분류
Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2009-05-27 07:09:19
Processing time 0.2937 sec