UVA11475 Extend to Palindrome(哈希)
来源:互联网 发布:mac视频拷贝到u盘 编辑:程序博客网 时间:2024/06/16 03:12
题意:
给出一个字符串,让你添加最少的字符,使其成为回文串。
思路:
这个题是求出最长的回文后缀。这里我们可以用字符串hash来做这道题。
我们从后往前求出后缀的从前向后和从后向前的子串的hash值,如果hash值相同,说明该位置是回文串。
#include<bits/stdc++.h>typedef long long ll;using namespace std;char str[100005];int main(){ while(scanf("%s", str) != EOF) { int len = strlen(str), maxlen = 0; unsigned int pre = 0, suf = 0; unsigned int magic = 233, pow = 1; for(int i = len - 1; i >= 0; i--) { pre = pre + str[i] * pow; pow *= magic; suf = suf * magic + str[i]; if(pre == suf) maxlen = i; } printf("%s", str); for(int i = maxlen - 1; i >= 0; i--) printf("%c", str[i]); printf("\n"); } return 0;}
阅读全文
0 0
- UVA11475 Extend to Palindrome(哈希)
- UVA11475--Extend to Palindrome
- UVa11475 - Extend to Palindrome
- uva11475 - Extend to Palindrome KMP
- UVA11475:Extend to Palindrome(Hash 或 KMP)
- Extend to Palindrome - UVa 11475 哈希
- UVa 11475 - Extend to Palindrome
- UVa 11475-Extend to Palindrome JAVA
- UVA 11475 - Extend to Palindrome(KMP)
- uva 11475 - Extend to Palindrome(KMP)
- UVA 11475 Extend to Palindrome KMP
- UVA 11475 Extend to Palindrome hash
- Extend to Palindrome - UVa 11475 Manacher算法
- UVA - 11475 Extend to Palindrome manacher+贪心
- uva11475
- UVA11475
- UVA 11475 Extend to Palindrome KMP,后缀数组
- Uva 11475 : Extend to Palindrome(Hash或KMP)
- ssm框架 返回 json格式数据
- 用 JSON 表现树的结构兼谈队列、堆栈的练习(二)
- hdu 4632
- [noip][c/c++]关于字符串中前导0和后导0的处理算法
- Java:求整数位数:任意输入一个整数(小于10位),求它的位数
- UVA11475 Extend to Palindrome(哈希)
- xynuoj 灯光问题 酒馆浪人的博客
- 每日更新的电信IP段,联通IP段,铁通IP段和移动IP段
- 存在i+1<i的数吗?
- Pixy图像处理与识别
- JavaScript事件
- 莫队
- I2C和SPI总线对比
- 链式前向星