d017: AB Circle

出處 http://zerojudge.tw/ShowProblem?problemid=d017

內容 :

這裡有一個圓,它是由 A 和 B 所組成,我們給它一個名字叫做AB Circle,你可以看到圖中從圓中找出兩個端點切開,我們可以得到兩個字串,仔細觀察,聰明的你應該發現了,其中一個字串中 A 的數量等於另一個字串中 B 的數量。

找出一個這樣的切法很簡單,可是每個圓的切法可能不只一種,而你現在的工作就是要找出一個圓中所有的切法。

輸入說明 :

1.每一筆的輸入長度介於2到1000以內

2.輸入只會有'a'和'b'兩個字元

3.每個字串內都會包含'a'

4.每個字串內都會包含'b'

輸出說明 :

1.在輸出答案前,請先輸出"AB Circle #n:",其中 n 代表第n筆

2.輸入可能會超過200筆測試資料,對於每一筆案例,請輸出符合條件的各種切法的兩個端點,中間以 ',' 分開

3.所有輸出的答案,必需經過排序,請參考範例輸出

4.對於長度n的輸入,輸出的端點介於0到n-1之間

5.對於每一筆案例所得到的輸出間,請空一行,可參考範例輸出

範例輸入 :

ab

baa

範例輸出 :

AB Circle #1:

0,1


AB Circle #2:

0,1

0,2

1,2

提示 :

背景知識:

為了讓你更清楚題意,解釋第二筆案例的輸出 輸入 : baa 從 0,1 切開 : 得到了 b 和 aa 兩個字串 "b"字串中'a'的數量剛好等於"aa"字串中'b'的數量,也就是 0 從 0,2 切開 : 得到了 ba 和 a 兩個字串 "ba"字串中'b'的數量剛好等於"a"字串中'a'的數量,也就是 1 從 1,2 切開 : 得到了 a 和 ab 兩個字串 "a"字串中'a'的數量剛好等於"ab"字串中'b'的數量,也就是 1 請注意 : 輸出的結果可能會很龐大.

出處 :

(管理:chest)

解題策略

使用變數暫存i到j的a與b個數。