藍橋杯 水題練習 手鍊樣式

2021-10-03 16:44:47 字數 611 閱讀 1687

小明有3顆紅珊瑚,4顆白珊瑚,5顆黃瑪瑙。他想用它們串成一圈作為手鍊,送給女朋友。現在小明想知道:如果考慮手鍊可以隨意轉動或翻轉,一共可以有多少不同的組合樣式呢?

答案為:1170

#include

using

namespace std;

intmain()

if(i != v.

size()

)continue

; string s1 = s+s;

// 判斷旋轉的情況

v.push_back

(s1)

;reverse

(s1.

begin()

, s1.

end())

; v.

push_back

(s1)

;// 將翻轉的情況放入

ans++;}

while

(next_permutation

(s.begin()

, s.

end())

);cout

}

藍橋杯 手鍊樣式 列舉

看到網上有人用的手算解法,還有相關 o 還是列舉適合我,節約腦力。思路大概就是 1 手鍊可以轉動,所以儲存時將字串加倍,這樣就可以找到轉動後的情況。2 手鍊可以翻轉,所以再儲存一下reverse的字串。3 列舉方法,直接next permutation,簡單粗暴。include include in...

藍橋杯 2015初賽 手鍊樣式

小明有3顆紅珊瑚,4顆白珊瑚,5顆黃瑪瑙。他想用它們串成一圈作為手鍊,送給女朋友。現在小明想知道 如果考慮手鍊可以隨意轉動或翻轉,一共有多少不同的組合樣式?請你輸出該整數。不要輸出任何多餘的內容或說明性的文字。12!3!4!5!12 2310種,這是不考慮可以翻轉的答案。若考慮翻轉需要求出那些左右對...

藍橋杯2015初賽 手鍊樣式

小明有3顆紅珊瑚,4顆白珊瑚,5顆黃瑪瑙。他想用它們串成一圈作為手鍊,送給女朋友。現在小明想知道 如果考慮手鍊可以隨意轉動或翻轉,一共有多少不同的組合樣式?輸出請你輸出該整數。不要輸出任何多餘的內容或說明性的文字 思路 1.將珠子抽象成字元,然後使用c 中的下乙個排列函式來求排列 2.由於手鍊可以任...