길이가 S인 문자열이 있다고 가정합니다. n개의 숫자가 있고 원 안에 배열되어 있다고 가정합니다. 우리는 이 숫자들의 값을 알지 못하지만 S[i] ='E'이면 i번째와 (i+1)번째 숫자는 동일하지만 그것이 'N'이면 서로 다릅니다. S부터 시퀀스를 재생성할 수 있는지 여부를 확인해야 합니다.
따라서 입력이 S ="ENNEENE"와 같으면 [15,15,4,20,20,20,15]와 같은 값을 할당할 수 있으므로 출력은 True가 됩니다.
단계
이 문제를 해결하기 위해 다음 단계를 따릅니다. −
if S has single 'N', then: return false return true
예시
이해를 돕기 위해 다음 구현을 살펴보겠습니다. −
#include<bits/stdc++.h> using namespace std; bool solve(string S){ if (count(S.begin(), S.end(), 'N') == 1) return false; return true; } int main(){ string S = "ENNEENE"; cout << solve(S) << endl; }
입력
"ENNEENE"
출력
1