티스토리 뷰

var t,n,m,i,j,a,b:word;s:string;
begin
readln(t);j:=0;
repeat
readln(n);readln(s);
j+=1;
m:=length(s)-4;a:=0;b:=0;i:=1;
while i<=m do begin 
 if(b=0)and(s[i]='s')and(s[i+1]='h')and(s[i+2]='e')and(s[i+3]='e')and(s[i+4]='p')then begin 
    if(s[i+5]=' ')or(i=m)then begin a+=1; i+=5; end;
 end else b:=1;
 if s[i]=' 'then b:=0;
 i+=1;
end;
writeln('Case ',j,': This list contains ',a,' sheep.');
if j<t then writeln();
until t=j;
end.

 

풀이 's', 'h', 'e', 'e', 'p', ' ' 또는 's', 'h', 'e', 'e', 'p', \0 의 개수를 구하는 문제입니다.

 

b 가 0 이면, 특정 단어가 찾고자 하는 건지 판단합니다!

아니라면 b=1로 바꾸고 새로운 단어가 온다는 것을 알려주는 ' ' (공백, blank) 문자가 올때까지 i 을 1씩 증가시킵니다.

' '을 만나면 다시 b=0으로 바꾼다음 새로운 문자가 찾고자 하는게 맞는지 판단합니다.

 

 

주의 할 점 : 띄어쓰기 2줄!!!, sheepsheep 이건 sheep 이 아닙니다!!!!!!!!!

최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2026/01   »
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
글 보관함