Submission #882306

# Submission time Handle Problem Language Result Execution time Memory
882306 2023-12-03T03:35:44 Z Requiem Potatoes and fertilizers (LMIO19_bulves) C++17
24 / 100
64 ms 13516 KB
#include<bits/stdc++.h>
#define int long long
#define pb push_back
#define fast ios_base::sync_with_stdio(false), cin.tie(nullptr), cout.tie(nullptr);
#define MOD 1000000007
#define INF 1e18
#define fi first
#define se second
#define endl "\n"
#define FOR(i,a,b) for(int i=a;i<=b;i++)
#define FORD(i,a,b) for(int i=a;i>=b;i--)
#define sz(a) ((int)(a).size())
#define pi 3.14159265359
#define TASKNAME "bulves"
template<typename T> bool maximize(T &res, const T &val) { if (res < val){ res = val; return true; }; return false; } 
template<typename T> bool minimize(T &res, const T &val) { if (res > val){ res = val; return true; }; return false; } 
using namespace std; 
typedef pair<int,int> ii; 
typedef pair<int,ii> iii; 
typedef vector<int> vi; 
const int MAXN = 5e5 + 9;
int n;
int a[MAXN],b[MAXN],dp[MAXN],pre[MAXN],A,B;
main() 
{ 
    fast; 
   if (fopen(TASKNAME".inp","r")){
        freopen(TASKNAME".inp","r",stdin); 
        freopen(TASKNAME".out","w",stdout); 
   }
   cin>>n;
   for(int i=1;i<=n;i++){
       cin>>a[i]>>b[i];
       A += a[i];
       B += b[i];
   } 
   if (A == B or A == B + 1){
       int ans = 0, bring = 0;
       for(int i=1;i<=n;i++){
           ans += abs(bring);
           if (a[i] == b[i]) continue;
           if (a[i] < b[i]) bring -= b[i] - a[i];
           else bring += a[i] - b[i];
       }
       if (A == B + 1){
            for(int i=1;i<=n;i++){
                if (a[i] > b[i]){
                    ans -= n - i;
                    break;
                }
            }   
       }

       cout<<ans<<endl;
   }
} 

Compilation message

bulves.cpp:24:1: warning: ISO C++ forbids declaration of 'main' with no type [-Wreturn-type]
   24 | main()
      | ^~~~
bulves.cpp: In function 'int main()':
bulves.cpp:28:16: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
   28 |         freopen(TASKNAME".inp","r",stdin);
      |         ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
bulves.cpp:29:16: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
   29 |         freopen(TASKNAME".out","w",stdout);
      |         ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
# Verdict Execution time Memory Grader output
1 Correct 1 ms 4440 KB Output is correct
2 Correct 1 ms 4444 KB Output is correct
3 Correct 1 ms 4444 KB Output is correct
4 Correct 6 ms 4700 KB Output is correct
5 Correct 11 ms 9052 KB Output is correct
6 Correct 34 ms 10596 KB Output is correct
7 Correct 64 ms 13516 KB Output is correct
8 Correct 50 ms 12368 KB Output is correct
9 Correct 51 ms 11856 KB Output is correct
10 Correct 38 ms 10964 KB Output is correct
11 Correct 37 ms 10876 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 4440 KB Output is correct
2 Correct 1 ms 4444 KB Output is correct
3 Correct 1 ms 4444 KB Output is correct
4 Correct 6 ms 4700 KB Output is correct
5 Correct 11 ms 9052 KB Output is correct
6 Correct 34 ms 10596 KB Output is correct
7 Correct 64 ms 13516 KB Output is correct
8 Correct 50 ms 12368 KB Output is correct
9 Correct 51 ms 11856 KB Output is correct
10 Correct 38 ms 10964 KB Output is correct
11 Correct 37 ms 10876 KB Output is correct
12 Incorrect 17 ms 9556 KB Output isn't correct
13 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 1 ms 4440 KB Output is correct
2 Correct 1 ms 4444 KB Output is correct
3 Incorrect 1 ms 4440 KB Output isn't correct
4 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 1 ms 4440 KB Output is correct
2 Correct 1 ms 4444 KB Output is correct
3 Correct 1 ms 4444 KB Output is correct
4 Incorrect 1 ms 4440 KB Output isn't correct
5 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 1 ms 4440 KB Output is correct
2 Correct 1 ms 4444 KB Output is correct
3 Correct 1 ms 4444 KB Output is correct
4 Incorrect 1 ms 4440 KB Output isn't correct
5 Halted 0 ms 0 KB -