2-H 질문있습니다
if(isVowel(idx)) mcnt++, scnt = 0, is_include_v = 1;
else scnt++, mcnt = 0;
if(mcnt == 3 || scnt == 3) flag = 1;
이 부분이 제가 이해하고 있는 것이 맞는지 궁금합니다.
예제 입력에 ptoui를 예를 들어보겠습니다.
for문에서 ptoui라는 문자열을 알파벳 하나하나 받아주면서
p -> vcnt++, lcnt = 0 => vcnt = 1, lcnt = 0
t -> vcnt++, lcnt = 0 => vcnt = 2, lcnt = 0
o -> lcnt++, vcnt = 0 => vcnt = 0, lcnt = 1
u -> lcnt++, vcnt = 0 => vcnt = 0, lcnt = 2
i -> lcnt++, vcnt = 0 => vcnt = 0, lcnt = 3
다음 if문에서 lcnt == 3이므로 flag = 1이 되고,
flag = 1일 때는 not acceptable 출력.
이게 맞나요???
답변 1
0
안녕하세요 ㅎㅎ
예 수강생님 말씀이 맞습니다.
디버깅 코드를 넣어봤는데요. 이부분 참고부탁드립니다.
출력 :
1 : 0 : 0
2 : 0 : 0
0 : 1 : 0
0 : 2 : 0
0 : 3 : 1
<ptoui> is not acceptable.
#include <bits/stdc++.h>
using namespace std;
string s;
int lcnt, vcnt;
bool isVowel(int idx){
return (idx == 'a' || idx == 'e' || idx == 'i' || idx == 'o' || idx == 'u');
}
int main () {
while(true){
cin >> s;
if(s == "end")break;
lcnt = vcnt = 0;
bool flag = 0;
bool is_include_v = 0;
int prev = -1;
for(int i = 0; i < s.size(); i++){
int idx = s[i];
if(isVowel(idx))lcnt++, vcnt = 0, is_include_v = 1;
else vcnt++, lcnt = 0;
if(vcnt == 3 || lcnt == 3) flag = 1;
if(i >= 1 && (prev == idx) && (idx != 'e' && idx != 'o')){
flag = 1;
}
cout << vcnt << " : " << lcnt << " : " << flag << "\n";
prev = idx;
}
if(is_include_v == 0) flag = 1;
if(flag) cout << "<" << s << ">" << " is not acceptable.\n";
else cout << "<" << s << ">" << " is acceptable.\n";
}
return 0;
}
또 질문 있으시면 언제든지 질문 부탁드립니다.
좋은 수강평과 별점 5점은 제게 큰 힘이 됩니다. :)
감사합니다.
강사 큰돌 올림.
코딩 살구클럽 가입 문의
0
66
2
코딩살구클럽 가입문의
0
69
2
3-K private case 질문
0
65
2
안녕하세요. 코딩살구클럽 문의드립니다!
0
77
2
7:41 듣다가 질문합니다
0
77
2
코드 리뷰 요청드립니다!
0
83
2
코딩살구클럽 계정 문의
0
79
2
SK하이닉스 대비 강의수강
0
217
3
코딩살구클럽 등록부탁드립니다.
0
78
2
7-F 재귀로 풀시 런타임애러
0
74
1
1-N 문제 질문입니다. (+ 채점오류)
0
82
2
코딩살구클럽 가입 확인 부탁드립니다.
0
86
2
직장인 코테 합격 공부방법 문의
0
127
2
코딩살구클럽 가입 방법
0
96
2
6-H 체점 관련 질문
0
74
1
채점서버 연결 관련 질문입니다
0
101
2
삼성 s직군
0
88
1
삼성 코테 없어짐
0
212
1
코딩살구클럽 가입부탁드립니다
0
87
2
코딩살구클럽 가입 요청 확인부탁드립니다
0
69
2
5-S 테스트 케이스 질문
0
78
2
코살 문제풀이 환경
0
88
2
2 - T 오큰수 문제가 있는 것 같습니다.
0
81
1
추천 추가문제들
0
74
2





