#arc104b. [arc104_b]DNA Sequence
[arc104_b]DNA Sequence
题目描述
我们有一个长度为的字符串,由字符A
、T
、C
和G
组成。
当字符串和具有相同的长度时,如果对于每一个(),的第个字符和的第个字符互补,则称它们是互补的。这里,A
和T
互补,C
和G
也互补。
请找出满足以下条件的非空连续子串的数量:
- 存在一个字符串与的排列互补。
这里,即使内容相同,我们认为来自中不同位置的字符串是不同的。
约束条件
- 由
A
、T
、C
和G
组成。
输入
从标准输入读入输入数据。输入格式如下:
输出
输出满足条件的非空连续子串的数量。
示例输入1
4 AGCT
示例输出1
2
满足条件的两个子串如下:
GC
(第2到第3个字符)是CG
的补,而且GC
是CG
的一个排列。AGCT
(第1到第4个字符)是TCGA
的补,而且AGCT
是TCGA
的一个排列。
示例输入2
4 ATAT
示例输出2
4
满足条件的四个子串如下:
AT
(第1到第2个字符)是TA
的补,而且AT
是TA
的一个排列。TA
(第2到第3个字符)是AT
的补,而且TA
是AT
的一个排列。AT
(第3到第4个字符)是TA
的补,而且AT
是TA
的一个排列。ATAT
(第1到第4个字符)是TATA
的补,而且ATAT
是TATA
的一个排列。
示例输入3
10 AAATACCGCG
示例输出3
6