A8358 | String Transformation
时间限制1s
内存限制256MB
通过 / 提交0/0
题目描述
Let $s$ be a string whose length equals $n$ . Its characters are numbered from 0 to $n-1$ , $i$ and $j$ are integers, $0<=i<j<n$ . Let's define function $f$ as follows:
$f(s,i,j)=s[i+1...\ j-1]+r(s[j...\ n-1])+r(s[0...\ i])$ .
Here $s[p...\ q]$ is a substring of string $s$ , that starts in position $p$ and ends in position $q$ (inclusive); "+" is the string concatenation operator; $r(x)$ is a string resulting from writing the characters of the $x$ string in the reverse order. If $j=i+1$ , then the substring $s[i+1...\ j-1]$ is considered empty.
You are given two strings $a$ and $b$ . Find such values of $i$ and $j$ , that $f(a,i,j)=b$ . Number $i$ should be maximally possible. If for this $i$ there exists several valid values of $j$ , choose the minimal $j$ .
$f(s,i,j)=s[i+1...\ j-1]+r(s[j...\ n-1])+r(s[0...\ i])$ .
Here $s[p...\ q]$ is a substring of string $s$ , that starts in position $p$ and ends in position $q$ (inclusive); "+" is the string concatenation operator; $r(x)$ is a string resulting from writing the characters of the $x$ string in the reverse order. If $j=i+1$ , then the substring $s[i+1...\ j-1]$ is considered empty.
You are given two strings $a$ and $b$ . Find such values of $i$ and $j$ , that $f(a,i,j)=b$ . Number $i$ should be maximally possible. If for this $i$ there exists several valid values of $j$ , choose the minimal $j$ .
输入格式
The first two input lines are non-empty strings $a$ and $b$ correspondingly. Each string's length does not exceed $10^{6}$ characters. The strings can contain any characters with ASCII codes from 32 to 126 inclusive.
输出格式
Print two integers $i$ , $j$ — the answer to the problem. If no solution exists, print "-1 -1" (without the quotes).
输入输出样例
输入 #1
Die Polizei untersucht eine Straftat im IT-Bereich. untersucht eine Straftat.hciereB-TI mi ieziloP eiD
输出 #1
11 36
输入 #2
cbaaaa aaaabc
输出 #2
4 5
输入 #3
123342 3324212
输出 #3
-1 -1
暂无题解
C++ 编辑器
输入
输出
可保存默认模板;新题优先使用已保存模板。
当前快捷键仅展示,暂不支持修改。
- 撤销
Ctrl / ⌘ + Z - 重做
Ctrl / ⌘ + Y - 查找
Ctrl / ⌘ + F - 全选
Ctrl / ⌘ + A - 复制
Ctrl / ⌘ + C - 剪切
Ctrl / ⌘ + X - 粘贴
Ctrl / ⌘ + V - 自动排版
工具栏排版按钮 - 草稿保存
编辑时自动保存到本机
历史
提交记录
状态说明时间源码
AI
作答助手
你好,我是作答助手。可以问思路、复杂度、样例含义或代码报错原因;不会直接给出完整 AC 代码。
确定要清空代码吗?
提交通过
评测结果:Accepted