Submission #534278

# Submission time Handle Problem Language Result Execution time Memory
534278 2022-03-08T03:02:08 Z Paul_Liao_1457 Self Study (JOI22_ho_t2) C++14
0 / 100
315 ms 5956 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>
#include <cassert>

#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)(1e9)
#define pb push_back
#define F first
#define S second
#define AC ios::sync_with_stdio(0);cin.tie(0);cout.tie(0);
#define endl "\n"

using namespace std;

ll n,m;
ll aaa[300005],bbb[300005];


signed main(){
    AC;
    cin>>n>>m;
    FOR(i,1,n+1){
        cin>>aaa[i]; aaa[i]=abs(aaa[i]);
    }
    FOR(i,1,n+1){
        cin>>bbb[i]; bbb[i]=abs(bbb[i]); aaa[i]=max(aaa[i],bbb[i]);
    }
    ll l=0,r=(2e18+1),ans=0;
    while(l<r){
        ll mid=(l+r)/2,tot=0;
        FOR(i,1,n+1){
            if(aaa[i]*m<mid){
                ll tmp=mid-aaa[i]*m;
                tot+=1ll*(tmp-1)/abs(bbb[i])+1;
            }
            else{
                ll used=(mid-1)/aaa[i]+1;
                used=1;
                tot-=m-used;
                //cerr<<"m="<<m<<endl;
            }
            //cout<<"m="<<m<<endl;
        }
        //cout<<"mid="<<mid<<" tot="<<tot<<endl;
        if(tot<=0){
            ans=max(ans,mid);
            l=mid+1;
        }
        else{
            r=mid;
        }
    }
    cout<<ans<<endl;
}
# Verdict Execution time Memory Grader output
1 Correct 1 ms 204 KB Output is correct
2 Correct 1 ms 204 KB Output is correct
3 Correct 0 ms 204 KB Output is correct
4 Correct 1 ms 320 KB Output is correct
5 Correct 0 ms 204 KB Output is correct
6 Correct 1 ms 204 KB Output is correct
7 Correct 0 ms 204 KB Output is correct
8 Correct 1 ms 332 KB Output is correct
9 Correct 1 ms 204 KB Output is correct
10 Correct 3 ms 460 KB Output is correct
11 Correct 134 ms 5956 KB Output is correct
12 Correct 137 ms 5792 KB Output is correct
13 Correct 142 ms 5316 KB Output is correct
14 Incorrect 315 ms 5188 KB Output isn't correct
15 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 1 ms 204 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 1 ms 204 KB Output is correct
2 Correct 1 ms 204 KB Output is correct
3 Correct 0 ms 204 KB Output is correct
4 Correct 1 ms 320 KB Output is correct
5 Correct 0 ms 204 KB Output is correct
6 Correct 1 ms 204 KB Output is correct
7 Correct 0 ms 204 KB Output is correct
8 Correct 1 ms 332 KB Output is correct
9 Correct 1 ms 204 KB Output is correct
10 Correct 3 ms 460 KB Output is correct
11 Correct 134 ms 5956 KB Output is correct
12 Correct 137 ms 5792 KB Output is correct
13 Correct 142 ms 5316 KB Output is correct
14 Incorrect 315 ms 5188 KB Output isn't correct
15 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 1 ms 204 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 1 ms 204 KB Output is correct
2 Correct 1 ms 204 KB Output is correct
3 Correct 0 ms 204 KB Output is correct
4 Correct 1 ms 320 KB Output is correct
5 Correct 0 ms 204 KB Output is correct
6 Correct 1 ms 204 KB Output is correct
7 Correct 0 ms 204 KB Output is correct
8 Correct 1 ms 332 KB Output is correct
9 Correct 1 ms 204 KB Output is correct
10 Correct 3 ms 460 KB Output is correct
11 Correct 134 ms 5956 KB Output is correct
12 Correct 137 ms 5792 KB Output is correct
13 Correct 142 ms 5316 KB Output is correct
14 Incorrect 315 ms 5188 KB Output isn't correct
15 Halted 0 ms 0 KB -