Codeforces#543 div2 B. Mike and Children(暴力?)
Posted mrzdtz220
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Codeforces#543 div2 B. Mike and Children(暴力?)相关的知识,希望对你有一定的参考价值。
题目链接:http://codeforces.com/problemset/problem/1121/B
题意 给n个数 最多的对数 其中每一对(i,j)的ai+aj都相等(不知道怎么解释。。。。
判断的话 大概是4重循环 因为每次都选4个数嘛 两两相加判等 不过会TLE 而且并不知道哪些值用了哪些没用
就可以预处理记录a[i]+a[j]出现的次数 然后排序找最大的就好了
代码有点鬼畜。。
代码如下
#include <cstdio> #include <algorithm> #include <map> #include <vector> using namespace std; const int maxn = 1010; int a[maxn]; map<int, int> mp; vector<int> G; int main() { int n; scanf("%d", &n); for (int i = 0; i < n; i++) { scanf("%d", &a[i]); } for (int i = 0; i < n; i++) { for (int j = i + 1; j < n; j++) { mp[a[i] + a[j]]++; G.push_back(a[i] + a[j]); } } int ans = -1; for (int i = 0, sz = G.size(); i < sz; i++) { if (mp[G[i]] > ans) ans = mp[G[i]]; } printf("%d ", ans); return 0; }
以上是关于Codeforces#543 div2 B. Mike and Children(暴力?)的主要内容,如果未能解决你的问题,请参考以下文章
Codeforces543 B. Destroying Roads
CodeForces #362 div2 B. Barnicle
Codeforces #637 div2 B. Nastya and Door