【題解】b557: 直角三角形

題目連結:https://zerojudge.tw/ShowProblem?problemid=b557

實作注意事項

  • 要sort從小排到大,才能確保 a<b<c。
#include <iostream>
#include <algorithm>
using namespace std;
int T, n, ans;
int main(){
    cin >> T;
    while(T--){
        cin >> n;
        int a[n];
        for(int i=0; i<n; i++) cin >> a[i];
        sort(a, a+n);
        ans = 0;
        for(int i=0; i<n; i++)
            for(int j=i+1; j<n; j++)
                for(int k=j+1; k<n; k++)
                    ans += (a[i]*a[i] + a[j]*a[j] == a[k]*a[k]);
        cout << ans << '\n';
    }
}
發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *