<JZOJ5912>VanUSee
挺魔的
反正我考场上想不到233333333333333
#include<cstdio>
#include<cstring>
#include<iostream>
#include<algorithm>
#define rint register int
using std::sort;
using std::cin;
template <class T>inline void read(T &X)
{
X=;int W=;char ch=;
while(!isdigit(ch))W|=ch=='-',ch=getchar();
while(isdigit(ch))X=(X<<)+(X<<)+(ch^),ch=getchar();
X=W?-X:X;return;
}
int n,m,t,tot1,tot2;
int ou[],next[],ji[],tmp;
char S[],T[];
bool ok1,ok2,ok;
int main()
{
freopen("vanusee.in","r",stdin);
freopen("vanusee.out","w",stdout);
read(t);
while (t--)
{
ok1=ok2=ok=;
cin>>S+;
cin>>T+;
n=strlen(S+),m=strlen(T+);
tot1=tot2=;
for (rint i=,j=;i<=m;i++)
{
while (T[i]!=T[j+]&&j) j=next[j];
if (T[i]==T[j+]) j++;
next[i]=j;
}
for (rint i=,j=;i<=n;i++)
{
while (S[i]!=T[j+]&&j) j=next[j];
if (S[i]==T[j+]) j++;
if (j==m)
{
tmp=n-i+m-i;
if (!((n-m)%)) ou[++tot1]=tmp;
else ji[++tot2]=tmp;
j=next[j];
}
}
if ((n-m)%)
{
sort(ji+,ji+tot2+);
for(rint i=;i<=tot2;i++)
if(ji[i]-ji[i-]==) ou[++tot1]=ji[i]-;
}
for (rint i=;i<=tot1;i++)
{
if (!ou[i]){ok=;break;}
if (ou[i]==) ok1=;
if (ou[i]==-) ok2=;
}
if (ok) {printf("pty\n");continue;}
if (!ok1 || !ok2) printf("cqf\n");
else printf("pty\n");
}
}
<JZOJ5912>VanUSee的更多相关文章
- [JZOJ 5912] [NOIP2018模拟10.18] VanUSee 解题报告 (KMP+博弈)
题目链接: https://jzoj.net/senior/#contest/show/2530/2 题目: 众所周知,cqf童鞋对哲学有着深入的理解和认识,并常常将哲学思想应用在实际生活中,例如锻炼 ...
- [NOIP2018模拟赛10.18]自闭报告
闲扯 这一天,菜鸡RyeCatcher又想起来了被毒瘤题支配的恐惧 今天比较好玩,还是ljy提醒才发现文件夹里有题面...不知道外面的人什么时候才发现 看完了题面,又回到了雅礼啥题也不会写的感觉 T1 ...
随机推荐
- java线程——线程基础
一,线程之间的关系 线程之间存在两种关系: (1)间接相互制约:相互争夺线程资源: (2)直接相互制约:线程之间的相互合作: 间接相互制约也可以成为互斥,直接相互制约也可以称为同步:同步也包括互斥,互 ...
- [LC] 51. N-Queens
Given an integer n, return all distinct solutions to the n-queens puzzle. Each solution contains a d ...
- Go-开发环境搭建
02-开发环境搭建 目录 一 下载地址 二 安装 Linux安装 Windows安装 Mac安装 三 测试安装 四 命令介绍 基本介绍 build 和 run 命令 get 命令 一 下载地址 安 ...
- quartz2.2.1bug
quartz2.1.5 调用 scheduler.start()方法时报这样一个异常: 严重: An error occurred while scanning for the next trigge ...
- 国产手机早就异军突起,为何还是有很多人“迷恋”iPhone?
近几年,国产手机不论是从外观上还是设计上,以及销量上都比前有了长足的进步,手机的品质和售后也在不断提升.这也让中国手机厂商不断的推出了拥有自己品牌特色的产品.特别是2018年不少国产手机品牌的旗舰级产 ...
- Covisibility Graph
在Orb-Slam中有三个地图分别是Covisibility Graph,Spanning Graph,以及Essential Graph,它们三个分别是什么意思呢? 首先,图优化是目前视觉SLAM里 ...
- shell手册
摘自雪松同学 0说明{ # shell实例手册最新下载地址: http://hi.baidu.com/quanzhou722/item/f4a4f3c9eb37f02d46d5c0d9 # pytho ...
- python代码实现购物车(django的redis与vue)
安装模块 pip install django-redis 后端代码 # 购物车 class CartView(APIView): # 初始化函数 def __init__(self): self.c ...
- 使用sshfs
寻找winscp在mac下的代替品, 没有找到. 但找到一个更好用的方法: 通过sshfs挂载文件目录,当作普通文件夹使用. 使用方法 sshfs -o defer_permissions -o no ...
- rsync实战(二)
加两个需求:1.增加一个模块2.每个模块不同的用户名 步骤: .修改配置文件/etc/rsyncd.conf [backup] comment = commit path = /backup auth ...