Submission #1333698


Source Code Expand

#include <iostream>
#include <string>
#include <vector>
#include <queue>
#include <stack>
#include <map>
#include <algorithm>
#include <sstream>
#include <cmath>
#include <set>
#include <iomanip>
#include <fstream>
using namespace std;

#define REP(i,n) for(int (i)=0;(i)<(int)(n);(i)++)
#define REMOVE(Itr,n) (Itr).erase(remove((Itr).begin(),(Itr).end(),n),(Itr).end())
#define RREP(i,n) for(int (i)=(int)(n)-1;i>=0;i--)
#define UNIQUE(Itr) sort((Itr).begin(),(Itr).end()); (Itr).erase(unique((Itr).begin(),(Itr).end()),(Itr).end())
typedef long long ll;

ll N,C,K;
vector<ll> T;

int main() {

	cin >> N >> C >> K;
	T.resize(N);
	REP(i,N) cin >> T[i];

	sort(T.begin(),T.end());
	reverse(T.begin(),T.end());

	ll ans = 0;
	ll cnt = 0;
	ll start = -1;
	REP(i,T.size()) {
		if(start == -1) {
			start = T[i];
			cnt++;
		} else if(start - T[i] > K) {
			start = T[i];
			cnt = 1;
			ans++;
		} else {
			cnt++;
		}
		if(cnt == C) {
			cnt = 0;
			start = -1;
			ans++;
		}
	}

	if(cnt > 0) ans++;

	cout << ans << endl;

	return 0;
}

Submission Info

Submission Time
Task A - Airport Bus
User kosakkun
Language C++14 (GCC 5.4.1)
Score 300
Code Size 1095 Byte
Status AC
Exec Time 48 ms
Memory 1024 KB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 300 / 300
Status
AC × 2
AC × 12
Set Name Test Cases
Sample sample1.txt, sample2.txt
All sample1.txt, sample2.txt, in1.txt, in2.txt, in3.txt, in4.txt, in5.txt, in6.txt, in7.txt, in8.txt, sample1.txt, sample2.txt
Case Name Status Exec Time Memory
in1.txt AC 1 ms 256 KB
in2.txt AC 47 ms 1024 KB
in3.txt AC 47 ms 1024 KB
in4.txt AC 47 ms 1024 KB
in5.txt AC 2 ms 256 KB
in6.txt AC 47 ms 1024 KB
in7.txt AC 41 ms 896 KB
in8.txt AC 48 ms 1024 KB
sample1.txt AC 1 ms 256 KB
sample2.txt AC 1 ms 256 KB