由於子序列只包含 Q 和 A,所以其他字元皆不會有想結果,不用理會它們。
先舉幾個例子當參考
QQQAQ = 3*1
QQQAQQ = 3*2
QQQAAQQ = 3*2 + 3*2
QQQAQAQQ = 3*3 + 4*2
QQQAQAQQAAQQQ = 3*6 + 4*5 + 6*3 + 6*3
發現要如果要計算 QAQ 子序列總量,就是當遇到 A 的時候把左邊的 Q 和右邊的 Q 相乘,然後把所有遇到 A 的情況相加即是答案。
但這樣子太難給程式計算了,所以在寫程式時要把邏輯反轉一下當變成"遇到 Q 的時候,會新產生多少個 QAQ 子序列"。
由於子序列只包含 Q 和 A,所以其他字元皆不會有想結果,不用理會它們。
先舉幾個例子當參考
QQQAQ = 3*1
QQQAQQ = 3*2
QQQAAQQ = 3*2 + 3*2
QQQAQAQQ = 3*3 + 4*2
QQQAQAQQAAQQQ = 3*6 + 4*5 + 6*3 + 6*3
發現要如果要計算 QAQ 子序列總量,就是當遇到 A 的時候把左邊的 Q 和右邊的 Q 相乘,然後把所有遇到 A 的情況相加即是答案。
但這樣子太難給程式計算了,所以在寫程式時要把邏輯反轉一下當變成"遇到 Q 的時候,會新產生多少個 QAQ 子序列"。
"發現要如果要計算 QAQ 子序列總量,就是當遇到 A 的時候把左邊的 Q 和右邊的 Q 相乘,然後把所有遇到 A 的情況相加即是答案。"
如果用Python寫的話,不難,用count就可以了。