Submission #68513

#TimeUsernameProblemLanguageResultExecution timeMemory
68513ege_eksiDivide and conquer (IZhO14_divide)C++14
48 / 100
1081 ms2032 KiB
#include<iostream> #include<cstdio> #include<cstdlib> #include<climits> using namespace std; int x[100000]; int g[100000]; int e[100000]; long long int prefix_g[100000]; long long int prefix_e[100000]; int main() { int n; scanf("%d",&n); for(int i = 0 ; i < n ; i++) { scanf("%d %d %d",&x[i] , &g[i] , &e[i]); } prefix_g[0] = g[0]; prefix_e[0] = e[0]; for(int i = 1 ; i < n ; i++) { prefix_g[i] = prefix_g[i-1] + g[i]; prefix_e[i] = prefix_e[i-1] + e[i]; } long long int total_e; long long int total_dist; long long int total_gold; long long int ans = 0; for(int i = 0 ; i < n ; i++) { for(int j = i ; j < n ; j++) { if(i == 0) { total_e = prefix_e[j]; total_gold = prefix_g[j]; } else { total_e = prefix_e[j] - prefix_e[i-1]; total_gold = prefix_g[j] - prefix_g[i-1]; } total_dist = x[j] - x[i]; if(total_e >= total_dist) { ans = max(ans , total_gold); } } } printf("%lli",ans); return 0; }

Compilation message (stderr)

divide.cpp: In function 'int main()':
divide.cpp:18:7: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
  scanf("%d",&n);
  ~~~~~^~~~~~~~~
divide.cpp:22:8: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
   scanf("%d %d %d",&x[i] , &g[i] , &e[i]);
   ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...