# | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
---|---|---|---|---|---|---|---|
888279 | 2023-12-16T20:18:49 Z | asdasdqwer | Job Scheduling (CEOI12_jobs) | C++14 | 220 ms | 27216 KB |
#pragma GCC optimize("O3") #pragma GCC target("avx,avx2,sse4") #include <bits/stdc++.h> using namespace std; signed main() { ios::sync_with_stdio(false); cin.tie(0); int n,m,d;cin>>n>>d>>m; vector<int> a(m); for (int &x:a)cin>>x; typedef pair<int,int> pii; vector<vector<int>> req(n); for (int i=0;i<m;i++) { req[a[i]-1].push_back(i); } vector<int> day(m, 0); function<bool(int)> sim=[&](int machines) -> bool { typedef pair<int,int> pii; auto cmp=[](const pii &x, const pii &y) { if (x.first != y.first) return x.first > y.first; return x.second > y.second; }; queue<pii> pq; for (int i=0;i<n;i++) { for (int x:req[i]) { pq.push({i+d, x}); } for (int j=0;j<machines;j++) { if (pq.size() == 0) break; pii t=pq.front();pq.pop(); if (t.first < i) return false; day[t.second]=i; } } if (pq.size()){ return false; } return true; }; int l=0, r=1e8; int ans=-1; while (l <= r) { int m=l+(r-l)/2; bool b=sim(m); if (b) { r=m-1; ans=m; } else { l=m+1; } } sim(ans); vector<vector<int>> ass(n); for (int i=0;i<m;i++) { ass[day[i]].push_back(i+1); } cout<<ans<<"\n"; for (int i=0;i<n;i++) { for (int x:ass[i]) cout<<x<<" "; cout<<"0\n"; } return 0; }
Compilation message
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 26 ms | 3364 KB | Output is correct |
2 | Correct | 27 ms | 3360 KB | Output is correct |
3 | Correct | 27 ms | 3324 KB | Output is correct |
4 | Correct | 26 ms | 3352 KB | Output is correct |
5 | Correct | 28 ms | 3356 KB | Output is correct |
6 | Correct | 33 ms | 3364 KB | Output is correct |
7 | Correct | 27 ms | 3576 KB | Output is correct |
8 | Correct | 26 ms | 3356 KB | Output is correct |
9 | Correct | 43 ms | 7960 KB | Output is correct |
10 | Correct | 32 ms | 7900 KB | Output is correct |
11 | Correct | 24 ms | 3168 KB | Output is correct |
12 | Correct | 51 ms | 5460 KB | Output is correct |
13 | Correct | 71 ms | 9160 KB | Output is correct |
14 | Correct | 113 ms | 12316 KB | Output is correct |
15 | Correct | 113 ms | 12628 KB | Output is correct |
16 | Correct | 166 ms | 16008 KB | Output is correct |
17 | Correct | 191 ms | 21724 KB | Output is correct |
18 | Correct | 220 ms | 21328 KB | Output is correct |
19 | Correct | 215 ms | 27216 KB | Output is correct |
20 | Correct | 190 ms | 21840 KB | Output is correct |