Submission #101680

# Submission time Handle Problem Language Result Execution time Memory
101680 2019-03-19T09:21:21 Z daniel920712 Wiring (IOI17_wiring) C++14
7 / 100
1000 ms 79096 KB
#include <iostream>
#include <stdio.h>
#include <stdlib.h>
#include <map>
#include <utility>
#include <vector>
#include "wiring.h"

using namespace std;
map < pair < int ,int > , long long > DP;
long long F(int N,int M,vector < int > &r,vector < int > &b)
{
    if(N==0&&M==0) return abs(r[N]-b[M]);
    else
    {
        if(DP.find(make_pair(N,M))!=DP.end()) return DP[make_pair(N,M)];
        long long t=abs(r[N]-b[M]),x=1e18;
        if(N) x=min(x,F(N-1,M,r,b));
        if(M) x=min(x,F(N,M-1,r,b));
        if(N&&M) x=min(x,F(N-1,M-1,r,b));
        //printf("%d %d %lld\n",N,M,t+x);
        DP[make_pair(N,M)]=t+x;
        return t+x;
    }
}
long long min_total_length(vector < int > r, vector < int > b)
{
    int N=r.size();
    int M=b.size();
    return F(N-1,M-1,r,b);
}
# Verdict Execution time Memory Grader output
1 Correct 3 ms 384 KB Output is correct
2 Correct 2 ms 384 KB Output is correct
3 Correct 2 ms 384 KB Output is correct
4 Correct 3 ms 384 KB Output is correct
5 Correct 2 ms 384 KB Output is correct
6 Correct 3 ms 256 KB Output is correct
7 Correct 48 ms 2936 KB Output is correct
8 Correct 47 ms 2808 KB Output is correct
9 Correct 41 ms 2808 KB Output is correct
10 Correct 47 ms 2908 KB Output is correct
11 Correct 46 ms 2812 KB Output is correct
12 Correct 50 ms 2912 KB Output is correct
13 Correct 53 ms 2884 KB Output is correct
14 Correct 47 ms 2804 KB Output is correct
15 Correct 49 ms 2952 KB Output is correct
16 Correct 49 ms 2936 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 4 ms 384 KB Output is correct
2 Correct 19 ms 1536 KB Output is correct
3 Execution timed out 1081 ms 69780 KB Time limit exceeded
4 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 2 ms 384 KB Output is correct
2 Correct 2 ms 384 KB Output is correct
3 Execution timed out 1077 ms 79096 KB Time limit exceeded
4 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 3 ms 384 KB Output is correct
2 Execution timed out 1072 ms 76480 KB Time limit exceeded
3 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 3 ms 384 KB Output is correct
2 Correct 2 ms 384 KB Output is correct
3 Correct 2 ms 384 KB Output is correct
4 Correct 3 ms 384 KB Output is correct
5 Correct 2 ms 384 KB Output is correct
6 Correct 3 ms 256 KB Output is correct
7 Correct 48 ms 2936 KB Output is correct
8 Correct 47 ms 2808 KB Output is correct
9 Correct 41 ms 2808 KB Output is correct
10 Correct 47 ms 2908 KB Output is correct
11 Correct 46 ms 2812 KB Output is correct
12 Correct 50 ms 2912 KB Output is correct
13 Correct 53 ms 2884 KB Output is correct
14 Correct 47 ms 2804 KB Output is correct
15 Correct 49 ms 2952 KB Output is correct
16 Correct 49 ms 2936 KB Output is correct
17 Correct 4 ms 384 KB Output is correct
18 Correct 19 ms 1536 KB Output is correct
19 Execution timed out 1081 ms 69780 KB Time limit exceeded
20 Halted 0 ms 0 KB -