POJ--3974 Palindrome(回文串,hash)】的更多相关文章

题意:输入一个字符串,至少插入几个字符可以变成回文串(左右对称的字符串) 分析:f[x][y]代表x与y个字符间至少插入f[x][y]个字符可以变成回文串,可以利用动态规划的思想,求解 状态转化方程: f[x][y]=0  初始化 f[x][y]=f[x+1][y-1]     s[x]==s[y]时 f[x][y]=MIN ( f[x+1][y] , f[x][y-1] )+1    s[x] != s[y]时 代码展示 一开始没有将算的的数据存放到数组中,使得有些数据重复计算好多次,TLE…
题意:添加最少的字符使之成为回文串 #include<cstdio> #include<iostream> #include<algorithm> #include<cstring> #include<cmath> #include<queue> using namespace std; ; int n,m,t; short dp[maxn][maxn]; char s[maxn]; int main() { int i,j,k; #…
洛谷 T89643 回文串(并查集) 洛谷:https://www.luogu.org/problem/T89643 题目描述 由于 Kiana 实在是太忙了,所以今天的题里面没有 Kiana. 有一个长度为 N 的字符串 S,有 K 条信息,每条信息为一个区间 [l,r],表示 S[l],S[l+1],……,S[r]是一个回文串. 出题人想知道,这个字符串中最多有多少种不同的字符.由于她 不会算,所以希望由你告诉她. 输入格式输入文件包括 K+1 行. 第一行包含两个正整数 N 和 K,分别表…
题目链接:http://poj.org/problem?id=3974 题意:求出给定字符串的最长回文串长度. 思路:裸的Manacher模板题. #include<iostream> #include<cstdio> #include<cstring> #include<string> #include<cmath> #include<algorithm> using namespace std; +; typedef long l…
题目链接:http://poj.org/problem?id=3280 思路: dp[i][j] :=第i个字符到第j个字符之间形成回文串的最小费用. dp[i][j]=min(dp[i+1][j]+cost[s[i-1]-'a'],dp[i][j-1]+cost[s[j-1]-'a']); if(s[i-1]==s[j-1]) dp[i][j]=min(dp[i+1][j-1],dp[i][j]); 注意循环顺序,我觉得这题就是这里是tricky: #include<iostream> #i…
题目链接:http://poj.org/problem?id=3280 题目大意:给你一个字符串,你可以删除或者增加任意字符,对应有相应的花费,让你通过这些操作使得字符串变为回文串,求最小花费.解题思路:比较简单的区间DP,令dp[i][j]表示使[i,j]回文的最小花费.则得到状态转移方程: dp[i][j]=min(dp[i][j],min(add[str[i]-'a'],del[str[i]-'a'])+dp[i+1][j]); dp[i][j]=min(dp[i][j],min(add[…
题意:给定字符串char[],以及Q个操作,操作有三种: 1:pos,chr:把pos位置的字符改为chr 2:pos:问以pos为中心的回文串长度为多长. 3:pos:问以pos,pos+1为中心的回文串长度为多长. 思路:用hash表示一段字符串或者连续子串.我们用BIT记录hash前缀和,那么也可以用BIT修改前缀和.然后blabla,乱搞就行了. 当然为了保险,最好用双hash. (此题暴力也可以过! 暴力代码:3962ms #include<bits/stdc++.h> #defin…
POJ   3974 Description Andy the smart computer science student was attending an algorithms class when the professor asked the students a simple question, "Can you propose an efficient algorithm to find the length of the largest palindrome in a string…
题目链接:http://poj.org/problem?id=3974 Time Limit: 15000MS Memory Limit: 65536K Description Andy the smart computer science student was attending an algorithms class when the professor asked the students a simple question, "Can you propose an efficient…
Given a string which consists of lowercase or uppercase letters, find the length of the longest palindromes that can be built with those letters. This is case sensitive, for example "Aa" is not considered a palindrome here. Note: Assume the leng…