Submission #67559961


Source Code Expand

#include<bits/stdc++.h>
#define int long long
#define pii pair<int,int>
#define st first
#define nd second
#define ls id<<1
#define rs id<<1|1
#define pow fast_pow
using namespace std;
inline int read(){
    int x=0,f=1;
    char ch=getchar();
    for(ch;ch<'0'||ch>'9';ch=getchar()) if(ch=='-') f=-1;
    for(ch;ch>='0'&&ch<='9';ch=getchar()) x=x*10+ch-'0';
    return x*f;
}
constexpr int INF=1e9,N=5e5+5;
int T=1,n,m,a[N],ans;
pii b[N];
multiset<int> ms;
vector<int> vec;
signed main(){
    // freopen("2.in","r",stdin),freopen("2.out","w",stdout);
    ios::sync_with_stdio(0),cin.tie(0),cout.tie(0);
    // T=read();
    for(int i=1;i<=T;i++){
        n=read(),m=read();
        for(int i=1;i<=n;i++) a[i]=read();
        sort(a+1,a+1+n);
        for(int i=1;i<n;i++) b[i]=make_pair(a[i+1]-a[i],i);
        sort(b+1,b+1+n,greater<>());
        vec.push_back(0);
        for(int i=1;i<m;i++) vec.push_back(b[i].nd);
        sort(vec.begin(),vec.end());
        vec.push_back(n);
        for(int i=1;i<vec.size();i++) ans+=a[vec[i]]-a[vec[i-1]+1];
        // for(auto i:vec) cout<<i<<' ';
        // cout<<'\n';
        cout<<ans;
    }
    return 0;
}
/*
5 8 10 14 15 15 20
 3 2  4  1  0  5
5+1
*/

Submission Info

Submission Time
Task D - Transmission Mission
User Ophi
Language C++ 20 (gcc 12.2)
Score 400
Code Size 1246 Byte
Status AC
Exec Time 112 ms
Memory 19000 KiB

Compile Error

Main.cpp: In function ‘long long int read()’:
Main.cpp:13:9: warning: statement has no effect [-Wunused-value]
   13 |     for(ch;ch<'0'||ch>'9';ch=getchar()) if(ch=='-') f=-1;
      |         ^~
Main.cpp:14:9: warning: statement has no effect [-Wunused-value]
   14 |     for(ch;ch>='0'&&ch<='9';ch=getchar()) x=x*10+ch-'0';
      |         ^~
Main.cpp: In function ‘int main()’:
Main.cpp:36:22: warning: comparison of integer expressions of different signedness: ‘long long int’ and ‘std::vector<long long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
   36 |         for(int i=1;i<vec.size();i++) ans+=a[vec[i]]-a[vec[i-1]+1];
      |                     ~^~~~~~~~~~~

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 400 / 400
Status
AC × 3
AC × 18
Set Name Test Cases
Sample 00-sample-01.txt, 00-sample-02.txt, 00-sample-03.txt
All 00-sample-01.txt, 00-sample-02.txt, 00-sample-03.txt, 01-01.txt, 01-02.txt, 01-03.txt, 01-04.txt, 01-05.txt, 01-06.txt, 01-07.txt, 01-08.txt, 01-09.txt, 01-10.txt, 01-11.txt, 01-12.txt, 01-13.txt, 01-14.txt, 01-15.txt
Case Name Status Exec Time Memory
00-sample-01.txt AC 1 ms 3556 KiB
00-sample-02.txt AC 1 ms 3520 KiB
00-sample-03.txt AC 1 ms 3488 KiB
01-01.txt AC 1 ms 3704 KiB
01-02.txt AC 1 ms 3524 KiB
01-03.txt AC 1 ms 3704 KiB
01-04.txt AC 1 ms 3552 KiB
01-05.txt AC 1 ms 3520 KiB
01-06.txt AC 1 ms 3588 KiB
01-07.txt AC 86 ms 16944 KiB
01-08.txt AC 88 ms 16940 KiB
01-09.txt AC 100 ms 16488 KiB
01-10.txt AC 76 ms 13676 KiB
01-11.txt AC 111 ms 18964 KiB
01-12.txt AC 64 ms 11420 KiB
01-13.txt AC 112 ms 17024 KiB
01-14.txt AC 57 ms 10932 KiB
01-15.txt AC 100 ms 19000 KiB