Submission #359071

#TimeUsernameProblemLanguageResultExecution timeMemory
359071jesus_coconutCount Squares (CEOI19_countsquares)C++17
100 / 100
2233 ms158616 KiB
#include <bits/stdc++.h>

using namespace std;

int H, V;
vector<int> h, v;

void read() {
	cin >> H >> V;
	h.resize(H);
	v.resize(V);
	for (auto &a : h) cin >> a;
	for (auto &a : v) cin >> a;
}

map<int, int> calcDiff(vector<int> const &v) {
	map<int, int> ret;
	for (int i = 0; i < (int)v.size(); ++i) {
		for (int j = i + 1; j < (int)v.size(); ++j) {
			ret[v[j] - v[i]]++;
		}
	}
	return ret;
}

void solve() {
	read();
	auto mh = calcDiff(h);
	auto mv = calcDiff(v);
	using ll = long long;
	ll ans = 0;
	for (auto &[key, val] : mh) {
		ans += val * mv[key];
	}
	cout << ans << '\n';
}

int main() {
	ios_base::sync_with_stdio(false);
	cin.tie(nullptr);

	solve();

	return 0;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...