#include "aliens.h"
#include <algorithm>
#include <cstring>
#include <numeric>
#include <vector>
#include <bitset>
#include <map>
#include <set>
#include <queue>
#include <deque>
#include <stack>
#include <unordered_map>
#include <unordered_set>
#include <cassert>
using namespace std;
#define dbg(x) cerr<<#x<<": "<<x<<"\n";
/*
I love VN uwu
*/
bool comp(pair<long long, long long>a, pair<long long, long long>b){
if(a.first==b.first) return a.second>b.second;
return a.first<b.first;
}
long long take_photos(int n, int m, int k, vector<int> r, vector<int> c) {
vector<pair<long long, long long>>curr;
vector<pair<long long, long long>>vp;
for(long long i=0 ; i<n ; i++) vp.push_back({min(r[i], c[i]), max(r[i], c[i])});
sort(vp.begin(), vp.end(), comp);
curr.push_back({0, 0});
for(long long i=0 ; i<n ; i++){
if((long long)curr.size()==1 || vp[i].first<curr.back().first || vp[i].second>curr.back().second) curr.push_back({vp[i].first, vp[i].second});
}
n=(long long)curr.size()-1;
vector<vector<long long>>dp(n+1, vector<long long>(k+1, 1e18));
for(long long i=1 ; i<=n ; i++){
for(long long j=1 ; j<=k ; j++){
if(j==1){
dp[i][j]=(curr[i].second-curr[1].first+1)*(curr[i].second-curr[1].first+1);
continue;
}
for(long long l=i ; l>0 ; l--){
long long vn=max(0ll, curr[l-1].second-curr[l].first+1);
dp[i][j]=min(dp[i][j], ((curr[i].second-curr[l].first+1)*(curr[i].second-curr[l].first+1))+dp[l-1][j-1]-(vn*vn));
}
}
}
long long ans=1e18;
for(long long j=1 ; j<=k ; j++) ans=min(ans, dp[n][j]);
return ans;
}
컴파일 시 표준 에러 (stderr) 메시지
aliens.h:1:9: warning: #pragma once in main file
1 | #pragma once
| ^~~~
aliens_c.h:1:9: warning: #pragma once in main file
1 | #pragma once
| ^~~~
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |