您的位置:首页 > 编程语言

【编程题】 黑化的牛牛

2017-06-20 22:43 148 查看
牛牛变得黑化了,想要摧毁掉地球。但他忘记了开启地球毁灭器的密码。牛牛手里有一个字符串S,牛牛还记得从S中去掉一个字符就恰好是正确的密码,请你帮牛牛求出他最多需要尝试多少次密码。

如样例所示S = "ABA",3个可能的密码是"BA", "AA", "AB".

当S = "A", 牛牛唯一可以尝试的密码是一个空的密码,所以输出1.


输入描述:

输入包括一个字符串S,字符串长度length(1 ≤ length ≤ 50),其中都是从'A'到'Z'的大写字母。



输出描述:

输出一个整数,表示牛牛最多需要尝试的密码次数。



输入例子:

ABA



输出例子:


3

#include <iostream>

#include <set>

using namespace std;

/******************************

1.遍历字符串

2.取子串,放入set集合

3.最终set集合的长度即是结果

*******************************/

int main()

{

string str;

set<string> paswds;

cin>>str;

int nCount = str.length();

if(nCount ==1)

{

cout<<1;

return 0;

}

for(int i = 0;i< nCount;++i)

{

paswds.insert(str.substr(0,i)+str.substr(i+1,nCount-i-1));

}

cout<<paswds.size()<<endl;

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: