Submission #1181732

#TimeUsernameProblemLanguageResultExecution timeMemory
1181732random_nameLabels (NOI20_labels)C++20
0 / 100
44 ms4680 KiB
#include <bits/stdc++.h> using namespace std; #define long long long #pragma region overloadings template <typename T1, typename T2> ostream& operator<< (ostream& os, const pair<T1, T2>& pair){ os << '(' << pair.first << ", " << pair.second << ')'; return os; } template <typename T1, typename T2> ostream& operator<< (ostream& os, const map<T1, T2>& map_var){ for(pair<T1, T2> i: map_var){ os << '(' << i.first << ": " << i.second << ") "; } return os; } template <typename T> ostream& operator<< (ostream& os, const vector<T>& vec){ for(T i: vec) os << i << ' '; return os; } template <typename T1, typename T2> istream& operator>> (istream& is, pair<T1, T2>& pair){ is >> pair.first >> pair.second; return is; } template <typename T> istream& operator>> (istream& is, vector<T>& vec){ for(int i = 0; i < vec.size(); i++) is >> vec[i]; return is; } #pragma endregion bool test_cases = false; ifstream ifile; ofstream ofile; // #define cin ifile // #define cout ofile void solution(){ int n; cin >> n; vector<int> D(n-1); cin >> D; int max_sum = 0; int max_ind = 0; int c_sum = 0; int c_ind = 0; for(int i = 0; i < n-1; i++){ c_sum += D[i]; if(c_sum < 0){ c_sum = 0; c_ind = i; } if(max_sum < c_sum){ max_sum = c_sum; max_ind = c_ind; } } if(max_sum < n - 1){ cout << -1 << '\n'; return; } int pref_sum[n] = {0}; for(int i = 1; i < n; i++){ pref_sum[i] = pref_sum[i-1] + D[i-1]; } int min_num = INT_MAX; for(int i = 0; i < n; i++){ min_num = min(pref_sum[i], min_num); } for(int i = 0; i < n; i++){ cout << pref_sum[i] + min_num + 1 << ' '; } } int main(){ ifile.open("circlecross.in"); ofile.open("circlecross.out"); if(test_cases){ int t; cin >> t; while(t--){ solution(); } } else{ solution(); } }
#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...