#include<iostream>
#include<vector>
#include<algorithm>
using namespace std;
const int MAXN = 4e3+7;
const long long INF = 1e18;
pair<int, int> tt[MAXN];
vector<pair<int, int> > a;
long long dp[MAXN][MAXN];
bool cmp(pair<int, int> a1, pair<int, int> b1)
{
    if(a1.first < b1.first) return true;
    if(a1.first > b1.first) return false;
    if(a1.second > b1.second) return true;
    return false;
}
long long take_photos(int n, int m, int k, vector<int> r, vector<int> c)
{
    for(int i = 1; i <= n; i++)
    {
        tt[i].first = min(c[i-1], r[i-1]);
        tt[i].second = max(c[i-1], r[i-1]);
    }
    sort(tt+1, tt+n+1, cmp);
    int maxi = 0;
    for(int i = 1; i <= n; i++)
    {
        if(tt[i].second > maxi)
        {
            maxi = tt[i].second;
            a.push_back(tt[i]);
        }
    }
    //cout<<a.size()<<"\n";
    //dp[n][k] = min{dp[p][k-1]+(r[n]-l[p+1])^2-max(0, r[p]-l[p+1])^2};
    for(int i = 0; i < a.size(); i++)
    {
        dp[i][1] = (a[i].second-a[0].first+1)*(a[i].second-a[0].first+1);
    }
    for(int i = 1; i <= k; i++)
    {
        dp[0][i] = (a[0].second-a[0].first+1)*(a[0].second-a[0].first+1);
    }
    for(int i = 2; i <= k; i++)
    {
        for(int j = 1; j < a.size(); j++)
        {
            long long mini = INF;
            for(int jj = 0; jj < j; jj++)
            {
                int ss = max(0, a[jj].second-a[jj+1].first+1);
                //cout<<i<<" "<<j<<" "<<jj<<" "<<dp[jj][i-1]+(a[j].second-a[jj+1].first+1)*(a[j].second-a[jj+1].first+1)-ss*ss<<"\n";
                mini = min(mini, dp[jj][i-1]+(a[j].second-a[jj+1].first+1)*(a[j].second-a[jj+1].first+1)-ss*ss);
            }
            dp[j][i] = mini;
        }
    }
    /*for(int i = 0; i < a.size(); i++)
    {
        for(int j = 1; j <= k; j++)
        {
            cout<<dp[i][j]<<" ";
        }
        cout<<"\n";
    }*/
    int sz = a.size()-1;
    return dp[sz][k];
}
/*
5 7 2
0 3
4 4
4 6
4 5
4 6
*/
/*int main()
{
    return 0;
}*/
컴파일 시 표준 에러 (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... |