用于检查数组的 C++ 代码可以由 Equal Not-Equal 序列构成或不构成

阅读 140 收藏 0 点赞 0 评论 0

假设我们有一个长度为 S 的字符串。考虑有 n 个数字,它们排列成一个圆圈。我们不知道这些数字的值,但如果 S[i] = 'E' 它表示第 i 个和第 (i+1) 个数字相同,但如果是 'N' 则它们是不同的。从 S 我们必须检查是否可以重新创建序列。

因此,如果输入像 S = "ENNEENE",那么输出将为 True,因为我们可以分配像 [15,15,4,20,20,20,15] 这样的值。

脚步

为了解决这个问题,我们将遵循以下步骤 -

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

评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号