답안 #36682

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
36682 2017-12-13T08:11:23 Z RockyB Job Scheduling (CEOI12_jobs) C++11
0 / 100
26 ms 6212 KB
/// In The Name Of God

#pragma GCC optimize("Ofast")
#pragma GCC target("sse,sse2,sse3,sse3,sse4,popcnt,abm,mmx")

#include <bits/stdc++.h>

#define f first
#define s second

#define pb push_back
#define pp pop_back
#define mp make_pair

#define sz(x) (int)x.size()
#define sqr(x) ((x) * 1ll * (x))
#define all(x) x.begin(), x.end()

#define Kazakhstan ios_base :: sync_with_stdio(0), cin.tie(0), cout.tie(0);

#define nl '\n'
#define ioi exit(0);

typedef long long ll;
typedef long double ld;
typedef unsigned long long ull;

const int N = (int)1e5 + 7, inf = (int)1e9 + 7, mod = (int)1e9 + 7;
const ll linf = (ll)1e18 + 7;
const int dx[] = {-1, 0, 1, 0, 1, -1, -1, 1}, dy[] = {0, 1, 0, -1, 1, -1, 1, -1};

using namespace std;

int n, d, m;
pair <int, int> a[N];
int cnt[N];

bool check(int total) {
	memset(cnt, 0, sizeof(cnt));
	for (int i = 1; i <= m; i++) {
		bool ok = 0;
		for (int j = a[i].f; j <= a[i].f + d; j++) {
			if (cnt[j] < total) {
				cnt[j]++;
				ok = 1;
				break;
			}
		}
		if (!ok) return 0;
	}
	return 1;
}
int main() {
	#ifdef IOI2018
		freopen ("in.txt", "r", stdin);
	#endif
	Kazakhstan
	cin >> n >> d >> m;
	vector <int> ans[n + 1];
	for (int i = 1; i <= m; i++) {
		cin >> a[i].f;
		a[i].s = i;
	}
	sort (a + 1, a + 1 + m);
	int l = 1, r = m, res = m;
	while (l <= r) {
		int mid = (l + r) >> 1;
		if (check(mid)) res = mid, r = mid - 1;
		else l = mid + 1;
	}
	{
		for (int i = 1; i <= m; i++) {
			for (int j = a[i].f; j <= a[i].f + d; j++) {
				if (sz(ans[j]) < res) {
					ans[j].pb(a[i].s);
					break;
				}
			}
		}
		cout << res << nl;
		for (int i = 1; i <= n; i++) {
			for (auto it : ans[i]) cout << it << ' ';
			cout << 0 << nl;
		}
	}
	ioi
}
# 결과 실행 시간 메모리 Grader output
1 Runtime error 23 ms 4140 KB Execution killed because of forbidden syscall writev (20)
2 Runtime error 16 ms 4140 KB Execution killed because of forbidden syscall writev (20)
3 Runtime error 23 ms 4144 KB Execution killed because of forbidden syscall writev (20)
4 Runtime error 16 ms 4144 KB Execution killed because of forbidden syscall writev (20)
5 Runtime error 16 ms 4144 KB Execution killed because of forbidden syscall writev (20)
6 Runtime error 16 ms 4144 KB Execution killed because of forbidden syscall writev (20)
7 Runtime error 16 ms 4144 KB Execution killed because of forbidden syscall writev (20)
8 Runtime error 19 ms 4144 KB Execution killed because of forbidden syscall writev (20)
9 Runtime error 23 ms 6208 KB Execution killed because of forbidden syscall writev (20)
10 Runtime error 23 ms 6212 KB Execution killed because of forbidden syscall writev (20)
11 Runtime error 26 ms 3876 KB Execution killed because of forbidden syscall writev (20)
12 Incorrect 9 ms 3348 KB Output isn't correct
13 Incorrect 9 ms 3348 KB Output isn't correct
14 Runtime error 9 ms 3588 KB Execution killed because of forbidden syscall writev (20)
15 Incorrect 9 ms 3348 KB Output isn't correct
16 Runtime error 6 ms 3452 KB Execution killed because of forbidden syscall writev (20)
17 Runtime error 13 ms 3588 KB Execution killed because of forbidden syscall writev (20)
18 Runtime error 9 ms 3460 KB Execution killed because of forbidden syscall writev (20)
19 Runtime error 6 ms 5568 KB Execution killed because of forbidden syscall writev (20)
20 Runtime error 13 ms 3588 KB Execution killed because of forbidden syscall writev (20)