這一題應該用二元組表示+計數的方法,既然是二元組,我們可以不妨直接讓每乙個二元對都變為指定的格式,即第一維必須大於第二維。這樣兩個二元對「等價」當且僅當兩個二元對完全相同。
注意到二元對中的元素均不大於 99,因此我們可以將每乙個二元對拼接成乙個兩位的正整數,即(x,y)→10x+y。這樣就無需使用雜湊表統計元素數量,而直接使用長度為 100的陣列即可。
class
solution
;//一維陣列
int count =
0, temp;
//count表示結果,temp表示當時求出來的拼接後的整數
for(
int i =
0;i < dominoes.
size()
;i++
)return count;}}
;
如有幫助 可以點下贊哦! 演算法題 等價多公尺諾骨牌對的數量
給你乙個由一些多公尺諾骨牌組成的列表 dominoes。如果其中某一張多公尺諾骨牌可以通過旋轉 0 度或 180 度得到另一張多公尺諾骨牌,我們就認為這兩張牌是等價的。形式上,dominoes i a,b 和 dominoes j c,d 等價的前提是 ac 且 bd,或是 ad 且 bc。在 0 ...
1128 等價多公尺諾骨牌對的數量
給你乙個由一些多公尺諾骨牌組成的列表 dominoes。如果其中某一張多公尺諾骨牌可以通過旋轉 0 度或 180 度得到另一張多公尺諾骨牌,我們就認為這兩張牌是等價的。形式上,dominoes i a,b 和 dominoes j c,d 等價的前提是 a c 且 b d,或是 a d 且 b c。...
1128 等價多公尺諾骨牌對的數量
題目描述 給你乙個由一些多公尺諾骨牌組成的列表 dominoes。如果其中某一張多公尺諾骨牌可以通過旋轉 0 度或 180 度得到另一張多公尺諾骨牌,我們就認為這兩張牌是等價的。形式上,dominoes i a,b 和 dominoes j c,d 等價的前提是 ac 且 bd,或是 ad 且 bc...