제출 #98957

#제출 시각아이디문제언어결과실행 시간메모리
98957figter001Job Scheduling (CEOI12_jobs)C++17
55 / 100
448 ms18176 KiB
#include <bits/stdc++.h> using namespace std; typedef long long ll; typedef long double ld; typedef unsigned long long ull; const int nax = 1e5+50; vector<pair<int,int>> j; vector<int> w; int n,d,m; queue<int> tmp; bool can(int md){ queue<int> q = tmp; int cur = 1,u = 0; while(q.size()){ int v = q.front(); q.pop(); if(cur > v)return 0; u++; if(u == md){ u = 0; cur++; } } return 1; } int main(){ scanf("%d%d%d",&n,&d,&m); j.resize(m); for(int i=0;i<m;i++){ scanf("%d",&j[i].first); j[i].second = i; } sort(j.begin(),j.end()); for(int i=0;i<m;i++) tmp.push(j[i].first + d); int md,lo=1,hi=1e5,ans=1e5; while(lo <= hi){ md = (lo+hi)/2; if(can(md)){ hi = md-1; ans = md; }else lo = md+1; } printf("%d\n", ans); int u = 0,id=0; for(int i=0;i<n;i++){ for(int j=0;j<ans;j++){ if(id == m)break; printf("%d ", ::j[id].second + 1); id++; } printf("0\n"); } }

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

jobs.cpp: In function 'int main()':
jobs.cpp:50:6: warning: unused variable 'u' [-Wunused-variable]
  int u = 0,id=0;
      ^
jobs.cpp:32:7: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
  scanf("%d%d%d",&n,&d,&m);
  ~~~~~^~~~~~~~~~~~~~~~~~~
jobs.cpp:35:8: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
   scanf("%d",&j[i].first);
   ~~~~~^~~~~~~~~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...