Submission #1341918

#TimeUsernameProblemLanguageResultExecution timeMemory
1341918DangerNoodle7591Collecting Stamps 3 (JOI20_ho_t3)C++20
0 / 100
2094 ms436 KiB
#include <bits/stdc++.h>
using namespace std;
#define lalala ios_base::sync_with_stdio(false);cin.tie(NULL);cout.tie(NULL);
#define N 1005
#define pb push_back
#define int long long int
#define s second
#define big 1000000000000

int arr[N][2];
int n,k;

int mx;
int coz(vector<int> v){
    int sn=0,kac=0,once=0;
    for(auto i:v){
        int a=abs(arr[once][0]-arr[i][0]),b;
        if(arr[once][0]<arr[i][0])b=arr[once][0]+k-arr[i][0];
        else b=arr[i][0]+k-arr[once][0];
        int x=min(a,b);
        //cout<<i<<" "<<once<<" "<<a<<" "<<b<<" "<<sn<<endl;
        if(x+sn<=arr[i][1]){
            kac++;
            once=i;
            sn+=x;
        }
    }
    mx=max(mx,kac);
    return kac;
}


signed main(){
    lalala;
    cin>>n>>k;
    mx=0;
    for(int i=1;i<=n;i++)cin>>arr[i][0];
    for(int i=1;i<=n;i++)cin>>arr[i][1];

    vector<int> v;
    for(int i=0;i<n;i++){
        v.pb(i+1);
    }

    coz(v);
    while(next_permutation(v.begin(),v.end())){

        coz(v);
    }
    cout<<mx<<endl;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...