# | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
---|---|---|---|---|---|---|---|
1005281 | 2024-06-22T09:43:02 Z | ErJ | Measures (CEOI22_measures) | C++17 | 119 ms | 14164 KB |
#include <bits/stdc++.h> using namespace std; #define ll long double #define vi vector<ll> #define pp pair<ll, ll> #define vp vector<pp> #define vvi vector<vi> #define inf 1000000000000000 #define rep(i,n) for(int i = 0; i < n; i++) int main(){ cin.tie(NULL); ios_base::sync_with_stdio(false); int n, m; ll d; cin >> n >> m >> d; d *= 2; vi A(m); rep(i,m) { cin >> A[i]; A[i] *= 2; } //cin >> A[0]; //A[0] *2; vp dp(m); dp[0] = {0, A[0]}; for(int i = 1; i < m; i++){ //cin >> A[i]; //A[i] *= 2; ll pos = A[i] + dp[i - 1].first; pos = min(pos, max(dp[i - 1].second + d, A[i] - dp[i-1].first)); ll plus = (dp[i-1].second + d - pos) / 2; if(plus < 0) plus = 0; dp[i] = {dp[i-1].first + plus, pos + plus}; //cout << dp[i].first / 2 << endl; } rep(i, dp.size()){ cout << dp[i].first / 2 << " "; } cout << endl; }
Compilation message
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Incorrect | 1 ms | 348 KB | Output isn't correct |
2 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Incorrect | 1 ms | 348 KB | Output isn't correct |
2 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 103 ms | 10832 KB | Output is correct |
2 | Incorrect | 119 ms | 14164 KB | Output isn't correct |
3 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 103 ms | 10832 KB | Output is correct |
2 | Incorrect | 119 ms | 14164 KB | Output isn't correct |
3 | Halted | 0 ms | 0 KB | - |