QOJ.ac
QOJ
ID | 题目 | 提交者 | 结果 | 用时 | 内存 | 语言 | 文件大小 | 提交时间 | 测评时间 |
---|---|---|---|---|---|---|---|---|---|
#126795 | #2784. Aliens | somethingnew# | 0 | 0ms | 4088kb | C++20 | 2.1kb | 2023-07-19 00:00:05 | 2024-07-04 00:45:25 |
Judging History
answer
// ↘ ⬇ ⬇ ⬇ ⬇ ⬇ ↙
// ➡ @roadfromroi ⬅
// ↗ ⬆ ⬆ ⬆ ⬆ ⬆ ↖
#include <iostream>
#include "vector"
#include "algorithm"
#include "numeric"
#include "climits"
#include "iomanip"
#include "bitset"
#include "cmath"
#include "map"
#include "deque"
#include "array"
#include "set"
#include "aliens.h"
#define all(x) x.begin(), x.end()
using namespace std;
typedef long long ll;
ll sq(ll a) {
return a * a;
}
pair<ll, int> reba(int n, vector<pair<int, int>> opp, ll cc) {
vector<int> cnt(n + 1);
vector<ll> dp(n + 1, 1e18);
dp[0] = 0;
for (int i = 0; i < n; ++i) {
for (int j = i + 1; j <= n; ++j) {
ll vl = dp[i] + sq(opp[i].first - opp[j-1].second - 1) + cc;
if (i != 0)
vl -= sq(opp[i].first - opp[i-1].second + 1);
if (dp[j] > vl) {
dp[j] = vl;
cnt[j] = cnt[i] + 1;
}
}
}
return {dp[n], cnt[n]};
}
ll take_photos(int n, int m, int k, vector<int> re, vector<int> c) {
vector<pair<int, int>> sgg(n);
for (int i = 0; i < n; ++i) {
sgg[i] = {min(re[i], c[i]), max(re[i], c[i])};
}
sort(all(sgg));
vector<pair<int, int>> bb;
for (auto [l, r] : sgg) {
while (!bb.empty() and l == bb.back().first)
bb.pop_back();
if (bb.empty() or bb.back().second < r) {
bb.push_back({l, r});
}
}
sgg = bb;
n = sgg.size();
ll l = 0, r = (ll)1e14;
while (l + 1 < r) {
ll m = l + r >> 1ll;
if (reba(n, sgg, m).second >= k) {
l = m;
} else {
r = m;
}
}
//cout << l << endl;
pair<ll, int> val = reba(n, sgg, l);
return val.first - l * val.second + l * (k-val.second);
}/*
int main() {
int n, m, k;
assert(3 == scanf("%d %d %d", &n, &m, &k));
std::vector<int> r(n), c(n);
for (int i = 0; i < n; i++) {
assert(2 == scanf("%d %d", &r[i], &c[i]));
}
long long ans = take_photos(n, m, k, r, c);
printf("%lld\n", ans);
return 0;
}*/
詳細信息
Subtask #1:
score: 0
Wrong Answer
Test #1:
score: 4
Accepted
time: 0ms
memory: 4088kb
input:
2 6 2 1 4 4 1
output:
098d134608c94f7413faac591054ee35 16
result:
ok Correct answer: answer = 16
Test #2:
score: 0
Accepted
time: 0ms
memory: 3776kb
input:
1 2 1 0 1
output:
098d134608c94f7413faac591054ee35 4
result:
ok Correct answer: answer = 4
Test #3:
score: 0
Accepted
time: 0ms
memory: 4044kb
input:
2 2 2 0 0 1 0
output:
098d134608c94f7413faac591054ee35 4
result:
ok Correct answer: answer = 4
Test #4:
score: 0
Accepted
time: 0ms
memory: 3852kb
input:
2 3 2 0 1 1 1
output:
098d134608c94f7413faac591054ee35 4
result:
ok Correct answer: answer = 4
Test #5:
score: 0
Accepted
time: 0ms
memory: 3828kb
input:
4 4 4 1 3 0 1 2 1 2 2
output:
098d134608c94f7413faac591054ee35 12
result:
ok Correct answer: answer = 12
Test #6:
score: -4
Wrong Answer
time: 0ms
memory: 3792kb
input:
5 8 5 0 5 2 6 7 4 4 5 2 6
output:
098d134608c94f7413faac591054ee35 64
result:
wrong answer Wrong answer: output = 64, expected = 52
Subtask #2:
score: 0
Wrong Answer
Test #23:
score: 12
Accepted
time: 0ms
memory: 3788kb
input:
2 2 1 0 0 1 1
output:
098d134608c94f7413faac591054ee35 4
result:
ok Correct answer: answer = 4
Test #24:
score: 0
Accepted
time: 0ms
memory: 3800kb
input:
4 3 2 0 0 0 0 0 0 0 0
output:
098d134608c94f7413faac591054ee35 1
result:
ok Correct answer: answer = 1
Test #25:
score: -12
Wrong Answer
time: 0ms
memory: 3824kb
input:
5 5 2 2 2 3 3 4 4 3 3 3 3
output:
098d134608c94f7413faac591054ee35 1
result:
wrong answer Wrong answer: output = 1, expected = 5
Subtask #3:
score: 0
Skipped
Dependency #1:
0%
Subtask #4:
score: 0
Skipped
Dependency #1:
0%
Subtask #5:
score: 0
Skipped
Dependency #1:
0%
Subtask #6:
score: 0
Skipped
Dependency #1:
0%