題目連結:
題目大意:
輸入第一列給定一正整數 T (1 ≦ T ≦ 50),代表有 T 筆測試資料,每筆佔兩列。測資第一列給定一正整數 N (1 ≦ N ≦ 100),代表有 N 根木棍。第二列給定 N 個正整數(皆介於 1 ~ 100 之間),代表這 N 根木棍的長度。
試問有多少組合可以從木棍中挑出三根形成一個直角三角形?
範例輸入:
3
3
3 4 5
6
3 3 4 4 5 5
3
3 4 6
範例輸出:
1
8
0
解題思維:
參見
這題。不過除了排序以便尋找以外,也可以使用雜湊表(Hash Table)快速得到每種邊長以及每種邊長的個數。
此次分享到此為止,如有任何更加簡潔的想法或是有說明不清楚之地方,也煩請各位大大撥冗討論。