Submission #659921

#TimeUsernameProblemLanguageResultExecution timeMemory
659921red24Stove (JOI18_stove)C++14
100 / 100
20 ms3232 KiB
#include "bits/stdc++.h" using namespace std; #define rep(i, a, b) for (int i = a; i <= b; i++) #define repr(i, a, b) for (int i = b; i >= a; i--) #define pi pair<int, int> #define ppi pair<pi, int> #define pip pair<int, pi> #define mp make_pair #define ff first #define ss second #define vi vector<int> #define vpi vector<pi> #define vb vector<bool> #define vvi vector<vi> #define pob pop_back #define pb push_back #define NO cout << "NO" << '\n' #define YES cout << "YES" << '\n' #define No cout << "No" << '\n' #define Yes cout << "Yes" << '\n' #define nl cout << '\n' #define ok cerr << "OK" << endl #define all(x) x.begin()+1, x.end() void print(vi &a) { rep(i, 1, a.size()-1) cout << a[i] << ' ';nl; } mt19937_64 RNG(chrono::steady_clock::now().time_since_epoch().count()); #define int long long void solve() { // CHECK IF PROGRAM HAS TESTCASES int n, k; cin >> n >> k; k--; vi a(n+1); rep(i, 1, n) cin >> a[i]; vi d(1); rep(i, 2, n) d.pb(a[i] - a[i-1] - 1); sort(all(d), greater<int>()); int res = 0; rep(i, 1, k) res += d[i]; cout << a[n]-a[1]+1-res; } int32_t main() { auto begin = std::chrono::high_resolution_clock::now(); // FASTIO ios_base::sync_with_stdio(0); cin.tie(NULL); cout.tie(NULL); int T = 1; //cin >> T; rep(i, 1, T) { //cout << "Case #" << i << ": "; solve(); } auto end = std::chrono::high_resolution_clock::now(); auto elapsed = std::chrono::duration_cast<std::chrono::nanoseconds>(end - begin); cerr << "Time measured: " << elapsed.count() * 1e-9 << " seconds.\n"; }

Compilation message (stderr)

stove.cpp: In function 'void print(std::vector<int>&)':
stove.cpp:4:40: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
    4 | #define rep(i, a, b) for (int i = a; i <= b; i++)
......
   31 |  rep(i, 1, a.size()-1) cout << a[i] << ' ';nl;
      |      ~~~~~~~~~~~~~~~~                   
stove.cpp:31:2: note: in expansion of macro 'rep'
   31 |  rep(i, 1, a.size()-1) cout << a[i] << ' ';nl;
      |  ^~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...