제출 #638703

#제출 시각아이디문제언어결과실행 시간메모리
638703jamezzzSelf Study (JOI22_ho_t2)C++17
0 / 100
470 ms8644 KiB
#include <bits/stdc++.h>
using namespace std;

#define pf printf
#define sf scanf
typedef long long ll;
typedef pair<int,int> ii;

#define maxn 300005

int n,m,a[maxn],b[maxn];

int main(){
	sf("%d%d",&n,&m);
	for(int i=0;i<n;++i){
		sf("%d",&a[i]);
	}
	for(int i=0;i<n;++i){
		sf("%d",&b[i]);
	}
	ll lo=1,hi=1e18,mid,res;
	while(lo<=hi){
		mid=(lo+hi)>>1;
		ll rem=(ll)n*m;
		for(int i=0;i<n;++i){
			if(a[i]>b[i]){
				ll take=min((ll)m,(mid+a[i]-1)/a[i]);
				ll self=max((mid-(take*a[i])+b[i]-1)/b[i],0ll);
				rem-=take+self;
			}
			else{
				ll self=(mid+b[i]-1)/b[i];
				rem-=self;
			}
		}
		if(rem>=0){
			res=mid;
			lo=mid+1;
		}
		else hi=mid-1;
	}
	pf("%lld\n",res);
}

컴파일 시 표준 에러 (stderr) 메시지

Main.cpp: In function 'int main()':
Main.cpp:14:4: warning: ignoring return value of 'int scanf(const char*, ...)' declared with attribute 'warn_unused_result' [-Wunused-result]
   14 |  sf("%d%d",&n,&m);
      |    ^
Main.cpp:16:5: warning: ignoring return value of 'int scanf(const char*, ...)' declared with attribute 'warn_unused_result' [-Wunused-result]
   16 |   sf("%d",&a[i]);
      |     ^
Main.cpp:19:5: warning: ignoring return value of 'int scanf(const char*, ...)' declared with attribute 'warn_unused_result' [-Wunused-result]
   19 |   sf("%d",&b[i]);
      |     ^
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...