Problem
Figure 1. The bonding graph of s = UAGCGUGAUCAC (left) has a perfect matching of basepair edges, but this is not the case for t = CAGCGUGAUCAC (right), in which one symbol has been replaced.
Figure 2. A maximum matching (highlighted in red) is shown in each of the three graphs above. You can verify that no other matching can contain more edges. (Courtesy: Miym, Wikimedia Commons User)
Figure 3. A red maximum matching of basepair edges in the bonding graph for t = CAGCGUGAUCAC.
The graph theoretical analogue of the quandary stated in the introduction above is that if we have an RNA string that does not have the same number of occurrences of 'C' as 'G' and the same number of occurrences of 'A' as 'U', then the bonding graph of cannot possibly possess a perfect matching among its basepair edges. For example, see Figure 1; in fact, most bonding graphs will not contain a perfect matching.
In light of this fact, we define a maximum matching in a graph as a matching containing as many edges as possible. See Figure 2 for three maximum matchings in graphs.
A maximum matching of basepair edges will correspond to a way of forming as many base pairs as possible in an RNA string, as shown in Figure 3.
Given: An RNA string of length at most 100.
Return: The total possible number of maximum matchings of basepair edges in the bonding graph of .
在上面的引言中表示的图的理论图类似物是,如果我们的RNA字符串 的'C'的出现次数与'G'的发生次数不同,而'A'的出现数与'U'的发生次数相同”,则粘结图形的不可能拥有 完美匹配其之间碱基对的边缘。例如,参见图1。实际上,大多数绑定图不会包含完美匹配。
鉴于这一事实,我们将图形中的最大匹配定义为包含尽可能多的边的匹配。有关图形 中的三个最大匹配,请参见图2。
碱基对边缘的最大匹配将对应于在RNA串中形成尽可能多的碱基对的方式,如图3所示。
给定:长度不超过100的RNA字符串。
返回值:的键合图中碱基对边的最大匹配总数。
Sample Dataset
>Rosalind_92
AUGCUUC
Sample Output
6