Submission #268997

#TimeUsernameProblemLanguageResultExecution timeMemory
268997zipdang04Stove (JOI18_stove)C++14
100 / 100
23 ms1792 KiB
#include <bits/stdc++.h>
using namespace std;

typedef long long ll;
typedef long double ld;
typedef vector<int> vi;
typedef vector<ll> vl;
typedef pair<int, int> pii;
typedef pair<ll, ll> pll;
typedef map<int, int> mii;
typedef unordered_map<int, int> umii;
typedef map<ll, ll> mll;
typedef unordered_map<ll, ll> umll;

// struct Node
// {
// 	int node, len;
// 	Node() {node = len = 0;}
// 	Node(int node, int len) {this -> node = node, this -> len = len;}
// };
// typedef vector<Node> vg;

#define MAX 1000001
#define MOD 1000000007

#define fi first
#define se second
#define pf push_front
#define pb push_back

#define FOR(type, i, a, b) for(type i = (a); i <= (b); i++)
#define FORR(type, i, b, a) for(type i = (b); i >= (a); i--)

#define testBit(n, bit) ((n >> bit) & 1)
#define flipBit(n, bit) (n ^ (1ll << bit))
#define cntBit(n) __builtin_popcount(n)
#define cntBitll(n) __builtin_popcountll(n)
#define randomize mt19937_64 mt(chrono::steady_clock::now().time_since_epoch().count());

main()
{
	ios_base::sync_with_stdio(0); cin.tie(0);
	int n, k; cin >> n >> k;
	int a[n + 1];
	int mi = INT32_MAX, ma = INT32_MIN;
	FOR(int, i, 1, n){
		cin >> a[i];
		mi = min(mi, a[i]); ma = max(ma, a[i]);
	}
	int total = ma - mi + 1;
	FOR(int, i, 1, n)
		a[i] = a[i + 1] - a[i] - 1;
	// FOR(int, i, 1, n - 1) cerr << a[i] << '|'; cerr << '\n';
	sort(a + 1, a + n, greater<int>());
	FOR(int, i, 1, k - 1) total -= a[i];
	cout << total;
}

Compilation message (stderr)

stove.cpp:40:6: warning: ISO C++ forbids declaration of 'main' with no type [-Wreturn-type]
   40 | main()
      |      ^
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...