求助站外题
  • 板块题目总版
  • 楼主T20201126
  • 当前回复3
  • 已保存回复3
  • 发布时间2023/6/10 12:17
  • 上次更新2023/10/23 13:30:48
查看原帖
求助站外题
419474
T20201126楼主2023/6/10 12:17

https://www.luogu.com.cn/problem/U303892

#include<bits/stdc++.h>
using namespace std;
#define int long long
#define re read()
inline int read(){
	int x=0,b=1;char c=getchar();
	while(!isdigit(c)){if(c=='-') b=-1;c=getchar();}
	while(isdigit(c)){x=x*10+c-'0';c=getchar();}
	return x*b;
}

int n,a,b,c,d;
int ans1,ans2;
int o,p,one,two;
signed main(){
//	freopen("roses.in","r",stdin);
//	freopen("roses.out","w",stdout);
	n=re;a=re;b=re;c=re;d=re;
	o=n/a,p=n/c;
	ans1=o*b;ans2=p*d;
	one=n%a,two=n%c;
	//1.
	if(one!=0){
		int now1=b,now2=(one%c==0)?(one/c)*d:(one/c+1)*d;
		ans1+=min(now1,now2);
	}
	//2.
	if(two!=0){
		int now1=d,now2=(two%a==0)?(two/a)*b:(two/a+1)*b;
		ans2+=min(now1,now2);
	}
	cout<<min(ans1,ans2);
	return 0;
}
2023/6/10 12:17
加载中...