UVA257 Palinwords题解
题目:传送门
思路:
哈希+排序,先分类讨论长度为 \(3\) 和 \(4\) 的回文字符串,求出其哈希值,再对哈希值排序,最后循环依次比较哈希值是否不同即可。(求哈希值时需处理两个回文串是否包含)(详见代码)
代码:
#include
using namespace std;
const int w=131;
int l,u[300],v,s,i;
string a;
int main()
{
std::ios::sync_with_stdio(0);
cin.tie(0); cout.tie(0);
while (cin>>a)
{
l=a.length();
v=0;
for (i=0;i