제출 #1183691

#제출 시각아이디문제언어결과실행 시간메모리
1183691ericl23302Aliens (IOI16_aliens)C++20
12 / 100
24 ms2376 KiB
#include "aliens.h" #include <iostream> #include <algorithm> #include <utility> #include <climits> #include <set> using namespace std; using ll = long long; ll sq(ll a) { return a * a; } ll sq(int a) { return (ll)(a) * a; } ll getArea(pair<ll, ll> a) { return sq(a.second - a.first + 1); } ll getArea(ll a, ll b) { return sq(b - a + 1); } ll positiveArea(ll a, ll b) { ll sideLength = b - a + 1; return (sideLength > 0 ? sq(sideLength) : 0); } ll take_photos(int n, int m, int k, std::vector<int> r, std::vector<int> c) { vector<pair<ll, ll>> points; for (ll i = 0; i < n; ++i) points.emplace_back(min(r[i], c[i]), max(r[i], c[i])); sort(points.begin(), points.end()); vector<vector<ll>> dp(n + 1, vector<ll>(k + 1, 0)); for (int i = 1; i <= k; ++i) dp[n][i] = LLONG_MAX / 2; for (int i = 1; i <= n; ++i) dp[i][0] = LLONG_MAX / 2; dp[1][1] = 1; // cout << 1 << '\n'; for (ll i = 2; i <= n; ++i) { for (ll j = 1; j <= min((ll)(k), i); ++j) { dp[i][j] = LLONG_MAX / 2; for (ll a = j - 1; a < i; ++a) { // cout << dp[a][j - 1] << '\n'; // cout << a << '\n'; // cout << i - 1 << '\n'; // cout << points[a].first << '\n'; // cout << points[i - 1].second << '\n'; dp[i][j] = min(dp[i][j], dp[a][j - 1] + getArea(points[a].first, points[i - 1].second)); } } } // for (int i = 0; i <= k; ++i) cout << dp[n][i] << ' '; // cout << '\n'; ll res = dp[n][k]; for (int i = 1; i < k; ++i) res = min(res, dp[n][i]); return res; }

컴파일 시 표준 에러 (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 timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...