Submission #1177355


Source Code Expand

#include <bits/stdc++.h>
using namespace std;

typedef long long ll;
typedef pair<int,int> pii;
typedef pair<ll,int> plli;
typedef pair<int,pii> pipii;
typedef vector<int> vi;
typedef vector<ll> vll;
typedef vector<vi> vvi;
typedef vector<vvi> vvvi;
typedef vector<pii> vpii;

#define rep(i,n) for (int i=0;i<(n);i++)
#define rep2(i,a,b) for (int i=(a);i<(b);i++)
#define rrep(i,n) for (int i=(n);i>=0;i--)
#define rrep2(i,a,b) for (int i=(a);i>b;i--)
#define pb push_back
#define mp make_pair
#define fi first
#define se second
#define all(a) (a).begin(),(a).end()

const int mod = 1e9 + 7;
const ll INF = 1<<30;
const int dx[4] = {1, 0, -1, 0};
const int dy[4] = {0, 1, 0, -1};

int n;
int l[400],r[400];
int dp[2][401][401];

int main(){
    cin >> n;
    if (n>400) return 0;
    rep(i,n) cin >> l[i] >> r[i];
    rep(i,2)rep(j,401)rep(k,401) dp[i][j][k]=INF;
    rep2(j,1,401){
        int w=r[0]-l[0];
        if (j+w>400) break;
        dp[1][j][j+w]=abs(l[0]-j);
    }
    rep2(i,1,n){
        rep(j,401)rep(k,401){
            dp[(i+1)%2][j][k]=INF;
        }
        rep(j,401)rep(k,401){
            int w=r[i]-l[i];
            if (k<l[i]){
                dp[(i+1)%2][k][k+w]=min(dp[(i+1)%2][k][k+w],dp[i%2][j][k]+l[i]-k);
            }
            else if (r[i]<j){
                dp[(i+1)%2][j-w][j]=min(dp[(i+1)%2][j-w][j],dp[i%2][j][k]+j-r[i]);
            }
            else{
                dp[(i+1)%2][j][k]=min(dp[(i+1)%2][j][k],dp[i%2][j][k]);
            }
        }
    }
    int ans=INF;
    int w=r[n-1]-l[n-1];
    rep(j,400){
        if (j+w>400) break;
        ans=min(ans,dp[n%2][j][j+w]);
    }
    cout << ans << endl;
    return 0;
}

Submission Info

Submission Time
Task E - NarrowRectangles
User roto_37
Language C++14 (GCC 5.4.1)
Score 0
Code Size 1736 Byte
Status RE
Exec Time 177 ms
Memory 1536 KB

Judge Result

Set Name Sample Subtask All
Score / Max Score 0 / 0 0 / 300 0 / 700
Status
AC × 3
WA × 1
RE × 1
AC × 1
WA × 12
AC × 4
WA × 32
RE × 1
Set Name Test Cases
Sample 0_000.txt, 0_001.txt, 0_002.txt, 0_003.txt, 0_004.txt
Subtask 0_000, 0_001, 0_004, 1_005.txt, 1_006.txt, 1_007.txt, 1_008.txt, 1_009.txt, 1_010.txt, 1_011.txt, 1_012.txt, 1_013.txt, 1_014.txt, 1_015.txt, 1_016.txt, 1_017.txt
All 0_000.txt, 0_001.txt, 0_002.txt, 0_003.txt, 0_004.txt, 1_005.txt, 1_006.txt, 1_007.txt, 1_008.txt, 1_009.txt, 1_010.txt, 1_011.txt, 1_012.txt, 1_013.txt, 1_014.txt, 1_015.txt, 1_016.txt, 1_017.txt, 2_018.txt, 2_019.txt, 2_020.txt, 2_021.txt, 2_022.txt, 2_023.txt, 2_024.txt, 2_025.txt, 2_026.txt, 2_027.txt, 2_028.txt, 2_029.txt, 2_030.txt, 2_031.txt, 2_032.txt, 2_033.txt, 2_034.txt, 2_035.txt, 2_036.txt
Case Name Status Exec Time Memory
0_000.txt AC 3 ms 1536 KB
0_001.txt AC 3 ms 1536 KB
0_002.txt WA 4 ms 1536 KB
0_003.txt RE 102 ms 1536 KB
0_004.txt AC 2 ms 1536 KB
1_005.txt WA 177 ms 1536 KB
1_006.txt WA 177 ms 1536 KB
1_007.txt AC 113 ms 1536 KB
1_008.txt WA 149 ms 1536 KB
1_009.txt WA 149 ms 1536 KB
1_010.txt WA 149 ms 1536 KB
1_011.txt WA 150 ms 1536 KB
1_012.txt WA 150 ms 1536 KB
1_013.txt WA 149 ms 1536 KB
1_014.txt WA 149 ms 1536 KB
1_015.txt WA 149 ms 1536 KB
1_016.txt WA 148 ms 1536 KB
1_017.txt WA 148 ms 1536 KB
2_018.txt WA 1 ms 256 KB
2_019.txt WA 1 ms 256 KB
2_020.txt WA 1 ms 256 KB
2_021.txt WA 1 ms 256 KB
2_022.txt WA 1 ms 256 KB
2_023.txt WA 1 ms 256 KB
2_024.txt WA 1 ms 256 KB
2_025.txt WA 1 ms 256 KB
2_026.txt WA 1 ms 256 KB
2_027.txt WA 1 ms 256 KB
2_028.txt WA 1 ms 256 KB
2_029.txt WA 1 ms 256 KB
2_030.txt WA 1 ms 256 KB
2_031.txt WA 1 ms 256 KB
2_032.txt WA 1 ms 256 KB
2_033.txt WA 1 ms 256 KB
2_034.txt WA 1 ms 256 KB
2_035.txt WA 1 ms 256 KB
2_036.txt WA 1 ms 256 KB