TAG- 芝士水题、算法 − 【 S T L − s e t 】 芝士水题、算法 - 【STL - set】 芝士水题、算法−【STL−set】时间复杂度- O ( N 2 ∗ log N ) O(N^2 \ast \log N) O(N2∗logN)
//
#include <bits/stdc++.h>
using namespace std;
// #define int long long
const int N = 105;
int in[N];
void solve() {
int n;
scanf("%d", &n);
for (int i = 1; i <= n; i++)
scanf("%d", &in[i]);
set<int> st;
for (int i = 1; i <= n; i++)
st.insert(in[i]);
sort(in + 1, in + n + 1, greater<int>());
int ans = 0;
for (int i = 1; i <= n; i++) {
for (int j = i + 1; j <= n; j++) {
int tt = in[i] - in[j];
if (st.find(tt) != st.end() && tt != in[j]) {
ans++;
break;
}
}
}
printf("%d\n", ans);
}
signed main() {
int t = 1;
// scanf("%d",&t );
while (t--)
solve();
return 0;
}
实现细节
- `
参考示意图
-
`
参考链接
- `
作者 | 乐意奥AI
本文介绍了NOIP2014普及组中一道涉及算法的题目,使用C++STL中的set数据结构解决珠心算测验问题,时间复杂度为O(N^2*logN)。

被折叠的 条评论
为什么被折叠?



