Submission #320998

# Submission time Handle Problem Language Result Execution time Memory
320998 2020-11-10T15:19:39 Z ssense Stove (JOI18_stove) C++14
100 / 100
54 ms 3852 KB
#include <bits/stdc++.h>
#define startt ios_base::sync_with_stdio(false);cin.tie(0);
typedef unsigned long long ull;
typedef long long  ll;
using namespace std;
#define FOR(n) for(int i=0;i<n;i++)
#define vt vector
#define vint vector<int>
#define all(v) v.begin(), v.end()
#define sz(a) (int)a.size()
#define MOD 1000000007
#define MOD2 998244353
#define MX 1000000000
#define NMAX 100005
#define MXL 1000000000000000000
#define PI 3.14159265
#define pb push_back
#define pf push_front
#define sc second
#define endl '\n'
#define fr firstx
#define int ll
#define ld long double


int ceildiv(int one, int two) {
	if (one % two == 0) {return one / two;}
	else {return one / two + 1;}
} int power(int n, int pow, int m) {
	if (pow == 0) return 1;
	if (pow % 2 == 0) {
		ll x = power(n, pow / 2, m);
		return (x * x) % m;
	}
	else return (power(n, pow - 1, m) * n) % m;
} int gcd(int a, int b) {
	if (!b)return a;
	return gcd(b, a % b);
} int factorial(int n, int mod) {
	if (n > 1)
		return (n * factorial(n - 1, mod)) % mod;
	else
		return 1;
} int lcm(int a, int b) {
	return (a * b) / gcd(a, b);
} vector<int> read(int n) {vector<int> a; for (int i = 0; i < n; i++) { int x; cin >> x; a.pb(x);} return a;}

void solve() {
	int n, k;
	cin >> n >> k;
	vint a = read(n);
	vint difs;
	for (int i = 0; i < n - 1; i++)
	{
		difs.pb(a[i + 1] - a[i] - 1);
	}
	sort(all(difs));
	int now = n;
	for (int i = 0; i < n - k; i++)
	{
		now += difs[i];
	}
	cout << now << endl;
}


int32_t main() {
//#ifndef ONLINE_JUDGE
//	freopen("input.txt", "r", stdin);
//	freopen("output.txt", "w", stdout);
//#endif
	solve();
}









# Verdict Execution time Memory Grader output
1 Correct 1 ms 364 KB Output is correct
2 Correct 1 ms 364 KB Output is correct
3 Correct 0 ms 364 KB Output is correct
4 Correct 1 ms 384 KB Output is correct
5 Correct 1 ms 364 KB Output is correct
6 Correct 1 ms 236 KB Output is correct
7 Correct 0 ms 364 KB Output is correct
8 Correct 1 ms 364 KB Output is correct
9 Correct 1 ms 364 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 364 KB Output is correct
2 Correct 1 ms 364 KB Output is correct
3 Correct 0 ms 364 KB Output is correct
4 Correct 1 ms 384 KB Output is correct
5 Correct 1 ms 364 KB Output is correct
6 Correct 1 ms 236 KB Output is correct
7 Correct 0 ms 364 KB Output is correct
8 Correct 1 ms 364 KB Output is correct
9 Correct 1 ms 364 KB Output is correct
10 Correct 2 ms 620 KB Output is correct
11 Correct 2 ms 492 KB Output is correct
12 Correct 2 ms 512 KB Output is correct
13 Correct 2 ms 492 KB Output is correct
14 Correct 2 ms 492 KB Output is correct
15 Correct 2 ms 492 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 364 KB Output is correct
2 Correct 1 ms 364 KB Output is correct
3 Correct 0 ms 364 KB Output is correct
4 Correct 1 ms 384 KB Output is correct
5 Correct 1 ms 364 KB Output is correct
6 Correct 1 ms 236 KB Output is correct
7 Correct 0 ms 364 KB Output is correct
8 Correct 1 ms 364 KB Output is correct
9 Correct 1 ms 364 KB Output is correct
10 Correct 2 ms 620 KB Output is correct
11 Correct 2 ms 492 KB Output is correct
12 Correct 2 ms 512 KB Output is correct
13 Correct 2 ms 492 KB Output is correct
14 Correct 2 ms 492 KB Output is correct
15 Correct 2 ms 492 KB Output is correct
16 Correct 51 ms 3736 KB Output is correct
17 Correct 51 ms 3672 KB Output is correct
18 Correct 51 ms 3668 KB Output is correct
19 Correct 51 ms 3672 KB Output is correct
20 Correct 50 ms 3692 KB Output is correct
21 Correct 51 ms 3672 KB Output is correct
22 Correct 50 ms 3672 KB Output is correct
23 Correct 51 ms 3672 KB Output is correct
24 Correct 54 ms 3852 KB Output is correct