답안 #668903

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
668903 2022-12-05T07:24:17 Z Evang Stove (JOI18_stove) C++17
100 / 100
22 ms 2384 KB
#include <bits/extc++.h>
using namespace std;
using namespace __gnu_pbds;

#ifdef _DEBUG
#define dout(x) clog << "Line " << __LINE__ << ": " << #x << "=" << (x) << el
#else
#define dout(x)
#endif

mt19937 rng(chrono::steady_clock::now().time_since_epoch().count());
#define uid(a,b) uniform_int_distribution<long long>(a,b)(rng)

#define ins insert
#define sz(x) (int((x).size()))
#define bs(args...) binary_search(args)
#define lb(args...) lower_bound(args)
#define ub(args...) upper_bound(args)
#define all(x) (x).begin(),(x).end()
#define mp(a, b) make_pair(a, b)
#define mt(args...) make_tuple(args)
#define pb push_back
#define eb emplace_back
#define f first
#define s second
#define die exit(0)
#define vc vector
#define rsz resize
#define as assert

template<typename T>
using uset = unordered_set<T>;
template<typename A, typename B>
using umap = unordered_map<A, B>;
template<typename T, typename Comp>
using pq = std::priority_queue<T, vc<T>, Comp>;
template<typename T>
using maxpq = pq<T, less<T>>;
template<typename T>
using minpq = pq<T, greater<T>>;
template<typename T>
using oset = tree<T, null_type, less<T>, rb_tree_tag, tree_order_statistics_node_update>;

template<typename A, typename B>
void cmin(A &x, const B &y) { x = min<common_type_t<A, B>>(x, y); }
template<typename A, typename B>
void cmax(A &x, const B &y) { x = max<common_type_t<A, B>>(x, y); }

using db = double;
using ld = long double;
using ll = long long;
using ull = unsigned long long;
using bi = __int128;
using ubi = unsigned __int128;
using pi = pair<int, int>;
using pll = pair<ll, ll>;
using pdb = pair<db, db>;
using pld = pair<ld, ld>;
using vb = vc<bool>;
using vi = vc<int>;
using vvi = vc<vi>;
using vll = vc<ll>;
using vpi = vc<pi>;
using vpll = vc<pll>;
using vpdb = vc<pdb>;
using vpld = vc<pld>;
using str = string;

constexpr char el = '\n';
constexpr char sp = ' ';
constexpr int inf = 0x3f3f3f3f;
constexpr ll llinf = 0x3f3f3f3f3f3f3f3fLL;
// ---------------------------------------------------------------------


const int N = 1e5+5;
int n, k, a[N];

signed main() {
  ios::sync_with_stdio(0); cin.tie(0);
  cout << fixed; clog << fixed; clog << unitbuf;
#ifndef _DEBUG
  //freopen(".in", "r", stdin);
  //freopen(".out", "w", stdout);
#endif

  cin >> n >> k;
  for(int i = 0; i < n; ++i)
    cin >> a[i];
  sort(a,a+n);
  vi b;
  for(int i = 1; i < n; ++i)
    b.pb(a[i]-a[i-1]-1);
  sort(all(b), greater<>());

  int ans = a[n-1]+1-a[0];
  for(int i = 0; i < k-1; ++i)
    ans -= b[i];
  cout << ans;
}
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 332 KB Output is correct
2 Correct 0 ms 212 KB Output is correct
3 Correct 1 ms 328 KB Output is correct
4 Correct 1 ms 212 KB Output is correct
5 Correct 1 ms 212 KB Output is correct
6 Correct 1 ms 212 KB Output is correct
7 Correct 0 ms 212 KB Output is correct
8 Correct 1 ms 332 KB Output is correct
9 Correct 0 ms 212 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 332 KB Output is correct
2 Correct 0 ms 212 KB Output is correct
3 Correct 1 ms 328 KB Output is correct
4 Correct 1 ms 212 KB Output is correct
5 Correct 1 ms 212 KB Output is correct
6 Correct 1 ms 212 KB Output is correct
7 Correct 0 ms 212 KB Output is correct
8 Correct 1 ms 332 KB Output is correct
9 Correct 0 ms 212 KB Output is correct
10 Correct 1 ms 340 KB Output is correct
11 Correct 1 ms 340 KB Output is correct
12 Correct 1 ms 340 KB Output is correct
13 Correct 1 ms 372 KB Output is correct
14 Correct 1 ms 340 KB Output is correct
15 Correct 1 ms 340 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 332 KB Output is correct
2 Correct 0 ms 212 KB Output is correct
3 Correct 1 ms 328 KB Output is correct
4 Correct 1 ms 212 KB Output is correct
5 Correct 1 ms 212 KB Output is correct
6 Correct 1 ms 212 KB Output is correct
7 Correct 0 ms 212 KB Output is correct
8 Correct 1 ms 332 KB Output is correct
9 Correct 0 ms 212 KB Output is correct
10 Correct 1 ms 340 KB Output is correct
11 Correct 1 ms 340 KB Output is correct
12 Correct 1 ms 340 KB Output is correct
13 Correct 1 ms 372 KB Output is correct
14 Correct 1 ms 340 KB Output is correct
15 Correct 1 ms 340 KB Output is correct
16 Correct 20 ms 2260 KB Output is correct
17 Correct 19 ms 2272 KB Output is correct
18 Correct 19 ms 2308 KB Output is correct
19 Correct 18 ms 2268 KB Output is correct
20 Correct 18 ms 2248 KB Output is correct
21 Correct 18 ms 2256 KB Output is correct
22 Correct 19 ms 2276 KB Output is correct
23 Correct 22 ms 2384 KB Output is correct
24 Correct 18 ms 2260 KB Output is correct