제출 #742947

#제출 시각아이디문제언어결과실행 시간메모리
742947vjudge1Job Scheduling (CEOI12_jobs)C++17
15 / 100
32 ms11072 KiB
#include<bits/stdc++.h> using namespace std; using ll = long long ; using pii = pair<ll , ll> ; using i3 = tuple<ll , ll , ll> ; const int N = 1e5+5 ; const int MOD = 1e9+7 ; int n , d , m ; pii S[N] ; vector<int> ans2[N] ; bool solve(int mid){ int day = 1 , cnt = 0 ; for(int i=1;i<=m;i++){ if(day <= S[i].first + d){ // do job i cnt++ ; ans2[day].push_back(S[i].second) ; } else { return false ; } if(cnt == mid){ day++; cnt = 0 ; } } return day-1 <= n ; } int main(){ ios_base::sync_with_stdio(0); cin.tie(0); cin >> n >> d >> m ; for(int i=1, x;i<=m;i++){ cin >> x ; S[i] = {x , i}; } sort(S+1 , S+m+1) ; int l = 1 , r = m , ans ; while(l <= r){ int mid = (l+r)/2 ; if(solve(mid)){ r = mid-1 ; ans = mid ; } else { l = mid+1 ; for(int i=1;i<=n;i++) ans2[i].clear(); } } cout << ans << "\n" ; for(int i=1;i<=n;i++){ for(int x : ans2[i]){ cout << x << " " ; } cout << "0\n" ; } }

컴파일 시 표준 에러 (stderr) 메시지

jobs.cpp: In function 'int main()':
jobs.cpp:63:20: warning: 'ans' may be used uninitialized in this function [-Wmaybe-uninitialized]
   63 |     cout << ans << "\n" ;
      |                    ^~~~
#Verdict Execution timeMemoryGrader output
Fetching results...