BZOJ3916 [Baltic2014]friends
来源:互联网 发布:旅游点评网站源码 编辑:程序博客网 时间:2024/06/03 17:17
枚举U的位置,hash判断即可
这个玩意特别的蛋疼……不唯一解指的是答案的字符串不一样,要是可以从两个位置拆开但是是俩一样的字符串的话不算不唯一解-_-
#include<iostream>#include<cstdio>#include<cstdlib>#include<cstring>#include<ctime>#include<cmath>#include<algorithm>#include<iomanip>#include<vector>#include<map>#include<set>#include<bitset>#include<queue>#include<stack>using namespace std;#define MAXN 4000010#define MAXM 1010#define INF 1000000000#define MOD 1000000007#define eps 1e-8#define ll long longint n;char s[MAXN];ll h[MAXN],mi[MAXN];ll bas=233;int ans;ll ansh;int main(){int i;scanf("%d%s",&n,s+1);if(!(n&1)){printf("NOT POSSIBLE\n");return 0;}mi[0]=1;for(i=1;i<=n;i++){mi[i]=mi[i-1]*bas%MOD;h[i]=(h[i-1]*bas+s[i])%MOD;}for(i=1;i<=n/2+1;i++){if((h[n/2+1]-h[i]*mi[n/2+1-i]%MOD+h[i-1]*mi[n/2+1-i]%MOD+MOD)%MOD == (h[n]-h[n/2+1]*mi[n-n/2-1]%MOD+MOD)%MOD){if(ans&&ansh!=(h[n]-h[n/2+1]*mi[n-n/2-1]%MOD+MOD)%MOD){printf("NOT UNIQUE\n");return 0;}ans=i;ansh=(h[n]-h[n/2+1]*mi[n-n/2-1]%MOD+MOD)%MOD;}}for(;i<=n;i++){if(((h[n]-h[i]*mi[n-i]%MOD+MOD)+(h[i-1]-h[n/2]*mi[i-1-n/2]%MOD+MOD)%MOD*mi[n-i]%MOD)%MOD==h[n/2]){if(ans&&ansh!=h[n/2]){printf("NOT UNIQUE\n");return 0;}ans=i;ansh=h[n/2];}}if(!ans){printf("NOT POSSIBLE\n");return 0;}for(i=1;i<=n/2+(ans<=n/2);i++){if(i!=ans){printf("%c",s[i]);}}printf("\n");return 0;}/*3TTT*/
0 0
- 【BZOJ3916】【Baltic2014】friends 暴力
- 【bzoj3916】 Baltic2014 friends hash
- 【Baltic2014】【BZOJ3916】friends
- [BZOJ3916] [Baltic2014]friends
- 【bzoj3916】【Baltic2014】【friends】【hash】
- BZOJ3916 [Baltic2014]friends
- bzoj3916: [Baltic2014]friends
- bzoj3916 [Baltic2014]friends 暴力
- bzoj 3916: [Baltic2014]friends
- BZOJ 3916 [Baltic2014]friends Hash
- bzoj 3916: [Baltic2014]friends hash
- friends
- friends.....
- Friends
- Friends
- Friends
- friends
- friends
- 读书笔记数据科学入门————线性代数
- 使用JDBC4.0处理Oracle中BLOB类型的数据
- SpringMVC Controller接口控制器详解 BindException
- 九个 Console 命令,让 js 调试更简单
- 【机器学习】【base】 之 距离函数
- BZOJ3916 [Baltic2014]friends
- poj 1157 LITTLE SHOP OF FLOWERS
- 如何看待IT培训这件事情?IT培训出来的人都一无是处吗?
- 101. Symmetric Tree
- 《UNIX环境高级编程》--9进程关系
- JAVA中的集合框架
- 设置视图透明度的两种方法和区别
- JVM垃圾收集器--G1收集器
- mongodb的优先级