每次只有两个选择,正好符合二进制的机制,我们可以使用二进制的原理直接推导出最终答案
将‘是’看作是0,‘否’看作是1,如最左边三个是就是000,换作十进制便是0,由于结论是从1开始,我们在在此结果加上1便是我们的答案
同理,最右边三个否就是111,换作十进制就是7,加上一便是结论8
题意解析清楚,请看代码
#include<iostream>
#include<cstring>
using namespace std;
int main()
{
int n, m; cin >> n >> m;
while(m --)
{
int ans = 0;
string s; cin >> s;
for(int i = 0; i < s.size(); i ++)
{
ans *= 2;
if(s[i] == 'n') ans ++;
}
cout << ans + 1 << endl;
}
return 0;
}