제출 #924860

#제출 시각아이디문제언어결과실행 시간메모리
924860Programmer123Distributing Candies (IOI21_candies)C++17
11 / 100
82 ms9040 KiB
#include "candies.h" #include <bits/stdc++.h> typedef std::vector<int> ivec; #define int long long ivec distribute_candies(ivec c, ivec l, ivec r, ivec v) { int N = c.size(); int Q = l.size(); ivec ans(N); if (N * Q <= 2000 * 2000) { for (int i = 0; i < N; ++i) { int val = 0; for (int j = 0; j < Q; ++j) { if (l[j] > i || r[j] < i) continue; val += v[j]; if (val < 0) val = 0; if (val > c[i]) val = c[i]; } ans[i] = val; } return ans; } bool pos = true; for (int i = 0; i < Q; ++i) { if (v[i] < 0) pos = false; } if (pos) { int diff[N + 1]; for (int i = 0; i <= N; ++i) { diff[i] = 0; } for (int i = 0; i < Q; ++i) { diff[l[i]] += v[i]; diff[r[i] + 1] -= v[i]; } for (int i = 1; i <= N; ++i) { diff[i] += diff[i - 1]; } for (int i = 0; i < N; ++i) { ans[i] = (signed) std::min<int>(diff[i], c[i]); } return ans; } }

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

candies.cpp: In function 'ivec distribute_candies(ivec, ivec, ivec, ivec)':
candies.cpp:47:1: warning: control reaches end of non-void function [-Wreturn-type]
   47 | }
      | ^
#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...