fork download
  1. #include <iostream>
  2. #include <vector>
  3.  
  4. using namespace std;
  5.  
  6. int main() {
  7.  
  8. ios_base::sync_with_stdio(0);
  9. cin.tie(0);
  10.  
  11. int T;
  12. cin >> T;
  13.  
  14. vector<pair<int, int>> answer;
  15. long long total = 0;
  16.  
  17. while(T--){
  18.  
  19. int n;
  20. cin >> n;
  21.  
  22. long long sum = -1e9;
  23. long long result_sum = -1e9;
  24. int left = 0;
  25. int right = 0;
  26. int result_left = 0;
  27. int result_right = 0;
  28.  
  29. for(int i = 1; i <= n; i++){
  30. int x;
  31. cin >> x;
  32. if(sum < 0){
  33. sum = x;
  34. left = right = i;
  35. }else{
  36. if(sum){
  37. right++;
  38. }else{
  39. left = right = i;
  40. }
  41. sum += x;
  42. }
  43. if(result_sum < sum or (result_sum == sum) and right - left < result_right - result_left){
  44. result_sum = sum;
  45. result_left = left;
  46. result_right = right;
  47. }
  48. }
  49. total += result_sum;
  50. answer.push_back(make_pair(result_left, result_right));
  51. }
  52.  
  53. cout << total << "\n";
  54. for(int i = 0; i < answer.size(); i++){
  55. cout << answer[i].first << " " << answer[i].second << "\n";
  56. }
  57.  
  58. return 0;
  59. }
Success #stdin #stdout 0.01s 5444KB
stdin
1
4
-5 -5 -5 -5
stdout
-5
1 1