4条回答 默认 最新
诺er~ 2021-08-19 12:56关注二分法(已修正):每一局对所有数排序以后枚举第一个数,二分查找是不是有满足条件的第二个数即可,这里可以直接使用binary_search。 #include<bits/stdc++.h> using namespace std; int n,m,a[10001],ans; int main() { cin>>n>>m; for(int j=1;j<=n;++j) { for(int i=1;i<=n;++i) { cin>>a[i]; } sort(a+1,a+n+1); for(int i=1;i<=n;i++) if(binary_search(a+i+1,a+n+1,m-a[i])) { ans++; break; } } cout<<ans; return 0; }本回答被题主选为最佳回答 , 对您是否有帮助呢?评论 打赏 举报解决 2无用
