Submission #534116

# Submission time Handle Problem Language Result Execution time Memory
534116 2022-03-08T01:19:16 Z Paul_Liao_1457 Self Study (JOI22_ho_t2) C++17
10 / 100
252 ms 5192 KB
// 還要更強
#include<iostream>
#include<queue>
#include<set>
#include<map>
#include<iomanip>
#include<math.h>
#include<cstring>
#include<stack>
#include<string.h>
#include<random>
#include<algorithm>
#include<vector>

#define ll long long
#define FOR(i,a,b) for(ll i=a;i<b;i++)
#define REP(i,a,b) for(int i=a;i>=b;i--)
#define INF (ll)(2e18)
#define pb push_back
#define F first
#define S second

using namespace std;

ll n,m;
ll a[300005],b[300005];

bool check(ll x){
    ll res=0;
    FOR(i,0,n){
        ll tmp=x;
        if((a[i]*m)<=tmp){
            tmp-=1ll*(a[i]*m);
            if(tmp<0){
                tmp=0;
            }
            else if(tmp){
                tmp=1;
            }
            res-=tmp;
        }
        else{
            //ll used=(tmp-1)/a[i]+1;
            //res+=m-used;
        }
    }
    if(res>=0) return 1;
    return 0;
}

signed main(){
    cin>>n>>m;
    FOR(i,0,n){
        cin>>a[i]; a[i]=abs(a[i]);
    }
    FOR(i,0,n){
        cin>>b[i]; b[i]=abs(b[i]); a[i]=max(a[i],b[i]);
    }
    ll l=0,r=(1e18+1),ans=0;
    while(l<r){
        ll mid=(l+r)>>1;
        if(check(mid)){
            ans=max(ans,mid); l=mid+1;
        }
        else{
            r=mid;
        }
    }
    cout<<ans<<endl;
}
# Verdict Execution time Memory Grader output
1 Correct 0 ms 204 KB Output is correct
2 Correct 0 ms 204 KB Output is correct
3 Correct 0 ms 204 KB Output is correct
4 Correct 0 ms 204 KB Output is correct
5 Correct 0 ms 204 KB Output is correct
6 Correct 0 ms 204 KB Output is correct
7 Correct 1 ms 204 KB Output is correct
8 Correct 1 ms 204 KB Output is correct
9 Correct 1 ms 204 KB Output is correct
10 Correct 4 ms 332 KB Output is correct
11 Correct 237 ms 5048 KB Output is correct
12 Correct 240 ms 4880 KB Output is correct
13 Correct 176 ms 4872 KB Output is correct
14 Correct 186 ms 5024 KB Output is correct
15 Correct 0 ms 204 KB Output is correct
16 Correct 95 ms 4952 KB Output is correct
17 Correct 252 ms 5064 KB Output is correct
18 Correct 235 ms 5192 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 0 ms 204 KB Output is correct
2 Correct 95 ms 4952 KB Output is correct
3 Correct 252 ms 5064 KB Output is correct
4 Correct 235 ms 5192 KB Output is correct
5 Incorrect 0 ms 204 KB Output isn't correct
6 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 0 ms 204 KB Output is correct
2 Correct 0 ms 204 KB Output is correct
3 Correct 0 ms 204 KB Output is correct
4 Correct 0 ms 204 KB Output is correct
5 Correct 0 ms 204 KB Output is correct
6 Correct 0 ms 204 KB Output is correct
7 Correct 1 ms 204 KB Output is correct
8 Correct 1 ms 204 KB Output is correct
9 Correct 1 ms 204 KB Output is correct
10 Correct 4 ms 332 KB Output is correct
11 Correct 237 ms 5048 KB Output is correct
12 Correct 240 ms 4880 KB Output is correct
13 Correct 176 ms 4872 KB Output is correct
14 Correct 186 ms 5024 KB Output is correct
15 Incorrect 0 ms 204 KB Output isn't correct
16 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 0 ms 204 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 0 ms 204 KB Output is correct
2 Correct 0 ms 204 KB Output is correct
3 Correct 0 ms 204 KB Output is correct
4 Correct 0 ms 204 KB Output is correct
5 Correct 0 ms 204 KB Output is correct
6 Correct 0 ms 204 KB Output is correct
7 Correct 1 ms 204 KB Output is correct
8 Correct 1 ms 204 KB Output is correct
9 Correct 1 ms 204 KB Output is correct
10 Correct 4 ms 332 KB Output is correct
11 Correct 237 ms 5048 KB Output is correct
12 Correct 240 ms 4880 KB Output is correct
13 Correct 176 ms 4872 KB Output is correct
14 Correct 186 ms 5024 KB Output is correct
15 Incorrect 0 ms 204 KB Output isn't correct
16 Halted 0 ms 0 KB -