제출 #525552

#제출 시각아이디문제언어결과실행 시간메모리
525552Yazan_AlattarKitchen (BOI19_kitchen)C++14
9 / 100
79 ms296 KiB
#include <bits/stdc++.h> using namespace std; typedef long long ll; #define F first #define S second #define pb push_back #define endl "\n" #define all(x) x.begin(), x.end() const int M = 3005; const ll inf = 1e9; const ll mod = 998244353; const double pi = acos(-1); const int dx[] = {1, 0, -1, 0}, dy[] = {0, 1, 0, -1}; int n, m, k, a[M], b[M], sum, tot, cnt[M], ans = inf; int main() { scanf("%d%d%d", &n, &m, &k); for(int i = 1; i <= n; ++i) { scanf("%d", &a[i]); sum += a[i]; if(a[i] < k) printf("Impossible\n"), exit(0); } for(int i = 1; i <= m; ++i) scanf("%d", &b[i]), tot += b[i]; if(sum > tot) printf("Impossible\n"), exit(0); for(int mask = 0; mask < (1 << m); ++mask){ for(int i = 1; i <= n; ++i) cnt[i] = 0; int res = 0; for(int i = 1; i <= m; ++i) if((mask >> (i - 1)) & 1){ res += b[i]; int rem = b[i]; for(int j = 1; j <= n; ++j) if(rem && cnt[j] < k) ++cnt[j], --rem; } bool ok = (res >= sum); for(int i = 1; i <= n; ++i) ok &= (cnt[i] >= k); if(ok) ans = min(ans, res - sum); } if(ans == inf) printf("Impossible\n"); else printf("%d\n", ans); return 0; }

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

kitchen.cpp: In function 'int main()':
kitchen.cpp:19:7: warning: ignoring return value of 'int scanf(const char*, ...)' declared with attribute 'warn_unused_result' [-Wunused-result]
   19 |  scanf("%d%d%d", &n, &m, &k);
      |  ~~~~~^~~~~~~~~~~~~~~~~~~~~~
kitchen.cpp:21:8: warning: ignoring return value of 'int scanf(const char*, ...)' declared with attribute 'warn_unused_result' [-Wunused-result]
   21 |   scanf("%d",  &a[i]);
      |   ~~~~~^~~~~~~~~~~~~~
kitchen.cpp:25:35: warning: ignoring return value of 'int scanf(const char*, ...)' declared with attribute 'warn_unused_result' [-Wunused-result]
   25 |  for(int i = 1; i <= m; ++i) scanf("%d", &b[i]), tot += b[i];
      |                              ~~~~~^~~~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...