蒟蒻求助
查看原帖
蒟蒻求助
305904
yezerui11楼主2023/7/3 22:08
#include<bits/stdc++.h>
using namespace std;
void print(__int128 n) {
    if(n>9)print(n/10);
    int k=n%10;
    printf("%d",k);
}
__int128 read(){
    string a;
    cin>>a;
    __int128 k=0;
    int len=a.size();
    for(int i=0;i<len;i++){
        k=k*10+a[i]-'0';
    }
    return k;
}
__int128 n,a,b,c,d,ans,sum=LONG_LONG_MAX;
int main(){
    n=read();
	a=read();
    b=read();
	c=read();
	d=read();
	__int128 e=__gcd(a,c),f=a*c/e;
	ans+=(n/f)*min(b*c/e,d*a/e);
	n%=f;
	for(__int128 i=0;a*(i-100)<n;i++){
	    __int128 n1=n-a*i,zero=0;
	    __int128 n2=max(zero,(n1+c-1)/c);
	    sum=min(sum,ans+n2*d+i*b);
	}
	print(sum);
	return 0;
} 

寄录

2023/7/3 22:08
加载中...