题解
难度:简单
知识点:逻辑与理解
这道题认真读完题目则发现很简单,因为漂亮的砖块最多存在一对不同颜色的相邻砖块。
所以只有三种情况:
- 如果有两种颜色以上,那么不可能组成漂亮砖块
- 只有两种颜色例如AB,那么排列有AB和BA,所以两种排列方式
- 只有一种颜色,那么只有一种排列方式
颜色对应不同的字母,为了对于找出字母的种类,就立即想到set元素不能重复的特点,所以根据set的size就得到字母的种类数
#include <iostream>
#include <string>
#include <set>
using namespace std;
int main()
{
string s;
getline(cin, s);
set<char> good;
for (int i = 0; i < s.length(); i++)
good.insert(s[i]);
if (good.size() == 1)
cout << 1 << endl;
else if (good.size() == 2)
cout << 2 << endl;
else
cout << 0 << endl;
}
京公网安备 11010502036488号