lintcode 382 三角形充要条件

2019-01-12  本文已影响0人  Ariana不会哭

判定是否是个三角形的充要条件:
较小的两条边>第三条边 则 可以放构成三角形

证明过程就不复述了,乖乖回去看高中数学。


image.png
//move right
int triangleCount(vector<int> &S) {
    sort(S.begin(), S.end());
    int n = S.size();
    int ans = 0;
    for(int i = 2; i < n; i++) {
        int left = 0, right = i - 1;
        while (left < right) {
            if (S[left] + S[right] > S[i]) {
                ans += right - left;
                right--;
            }
            else
                left++;
        }
    }
    return ans;
}
上一篇下一篇

猜你喜欢

热点阅读