답안 #71366

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
71366 2018-08-24T12:25:37 Z tamtam 웜뱃 (IOI13_wombats) C++14
9 / 100
91 ms 16836 KB
#include "wombats.h"
#include <bits/stdc++.h>
#define F first
#define S seoncd
typedef long long ll;
using namespace std;

int r,c,sum;
int h[5010][210];
int v[5010][210];
int dp[10][110][3];
int en;

int Solve (int x,int y,int d){
    if (x==r-1&&y==en){
        return 0;
    }
    int &res=dp[x][y][d];
    if (res!=-1)return res;
    res=1000000000;
    if (y>0&&d!=2){
        res=min(res,Solve(x,y-1,1)+h[x][y-1]);
    }
    if (y<c-1&&d!=1){
        res=min(res,Solve(x,y+1,2)+h[x][y]);
    }
    if (x<r-1)
        res=min(res,Solve(x+1,y,0)+v[x][y]);
    return res;
}

void init(int R, int C, int H[5000][200], int V[5000][200]) {
    r=R;
    c=C;
    for (int i=0;i<r;i++){
        for (int l=0;l<c-1;l++){
            h[i][l]=H[i][l];
        }
    }
    for (int i=0;i<r-1;i++){
        for (int l=0;l<c;l++){
            v[i][l]=V[i][l];
            sum+=v[i][l];
        }
    }
}

void changeH(int P, int Q, int W) {
    h[P][Q]=W;
}

void changeV(int P, int Q, int W) {
    sum-=v[P][Q];
    v[P][Q]=W;
    sum+=v[P][Q];
}

int escape(int V1, int V2) {

    if (c==1){
        return sum;
    }

    memset(dp,-1,sizeof dp);
    en=V2;
    return Solve(0,V1,0);
}
/*

3 4
0 2 5
7 1 1
0 4 0
0 0 0 2
0 3 4 7
5
3 2 1
3 3 3
2 0 0 5
1 1 1 6
3 2 1

*/

Compilation message

grader.c: In function 'int main()':
grader.c:15:6: warning: variable 'res' set but not used [-Wunused-but-set-variable]
  int res;
      ^~~
# 결과 실행 시간 메모리 Grader output
1 Correct 12 ms 8312 KB Output is correct
2 Correct 10 ms 8420 KB Output is correct
3 Correct 91 ms 10032 KB Output is correct
4 Correct 10 ms 10032 KB Output is correct
5 Correct 10 ms 10032 KB Output is correct
6 Correct 2 ms 10032 KB Output is correct
7 Correct 3 ms 10032 KB Output is correct
8 Correct 2 ms 10032 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 2 ms 10032 KB Output is correct
2 Correct 3 ms 10032 KB Output is correct
3 Correct 2 ms 10032 KB Output is correct
4 Incorrect 6 ms 10032 KB Output isn't correct
5 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 12 ms 10032 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 18 ms 16836 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 11 ms 16836 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 10 ms 16836 KB Output isn't correct
2 Halted 0 ms 0 KB -