Submission #626820

# Submission time Handle Problem Language Result Execution time Memory
626820 2022-08-11T21:06:34 Z ionan6ix Catfish Farm (IOI22_fish) C++17
3 / 100
84 ms 7272 KB
    #include "fish.h"

    #include <vector>
    #include<algorithm>
    using namespace std;

    long long max_weights(int N, int M, std::vector<int> X, std::vector<int> Y,
                          std::vector<int> W) {

        bool flag = true;

        for(auto it:X)
            if(it%2)
            {
                flag = false;
                break;
            }

        if(flag)
        {
            long long sol = 0;
            for(auto it:W)
                sol+=it;

            return sol;
        }

        flag = true;

        for(auto it:X)
            if(it>1)
            {
                flag = false;
                break;
            }

        if(flag)
        {
            std::vector<pair<int,int> > y0;
            std::vector<pair<int,int> > y1;

            int sz = X.size();

            for(int i=0;i<sz;i++)
                if(X[i]==0) y0.emplace_back(Y[i],W[i]);
                    else y1.emplace_back(Y[i],W[i]);

            std::sort(y0.begin(),y0.end());
            std::sort(y1.begin(),y1.end());

            long long sol = 0LL;
            long long sum = 0LL;

            for(auto it:y1)
                sum += 1LL*it.second;

            sol = sum;

            /**
             * Pana la un anumit punct luam din 0, apoi din 1
             */

            int pnt0 = -1;
            int pnt1 = 0;
            long long sum0 = 0;
            for(int i=0;i<(int)y0.size();i++)
            {
                pnt0++;
                sum0 += 1LL * y0[pnt0].second;

                while(pnt1<(int)y1.size() && y1[pnt1].first<=y0[pnt0].first)
                {
                    sum -= 1LL * y1[pnt1].second;
                    pnt1++;
                }
                sol = max(sol,sum+sum0);
            }

            sum0 = 0LL;
            for(auto it:y0)
                sum0+=1LL*it.second;

            sol = max(sol,sum0);
            

            return sol;
        }
        return 0;
    }
# Verdict Execution time Memory Grader output
1 Correct 23 ms 2140 KB Output is correct
2 Correct 24 ms 2620 KB Output is correct
3 Correct 0 ms 212 KB Output is correct
4 Correct 0 ms 212 KB Output is correct
5 Correct 71 ms 7264 KB Output is correct
6 Correct 84 ms 7272 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 0 ms 212 KB Output is correct
2 Correct 53 ms 5736 KB Output is correct
3 Correct 70 ms 6716 KB Output is correct
4 Correct 19 ms 2132 KB Output is correct
5 Correct 25 ms 2512 KB Output is correct
6 Incorrect 0 ms 212 KB 1st lines differ - on the 1st token, expected: '4044', found: '6066'
7 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 0 ms 212 KB Output is correct
2 Incorrect 0 ms 212 KB 1st lines differ - on the 1st token, expected: '882019', found: '0'
3 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 0 ms 212 KB 1st lines differ - on the 1st token, expected: '3', found: '0'
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 0 ms 212 KB 1st lines differ - on the 1st token, expected: '3', found: '0'
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 0 ms 212 KB 1st lines differ - on the 1st token, expected: '3', found: '0'
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 0 ms 212 KB Output is correct
2 Incorrect 0 ms 212 KB 1st lines differ - on the 1st token, expected: '882019', found: '0'
3 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 23 ms 2140 KB Output is correct
2 Correct 24 ms 2620 KB Output is correct
3 Correct 0 ms 212 KB Output is correct
4 Correct 0 ms 212 KB Output is correct
5 Correct 71 ms 7264 KB Output is correct
6 Correct 84 ms 7272 KB Output is correct
7 Correct 0 ms 212 KB Output is correct
8 Correct 53 ms 5736 KB Output is correct
9 Correct 70 ms 6716 KB Output is correct
10 Correct 19 ms 2132 KB Output is correct
11 Correct 25 ms 2512 KB Output is correct
12 Incorrect 0 ms 212 KB 1st lines differ - on the 1st token, expected: '4044', found: '6066'
13 Halted 0 ms 0 KB -