public class Main1 {
// static int[][] res = new int[n][m];
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
int m = sc.nextInt();
int a = sc.nextInt();
int b = sc.nextInt();
int ans = backtrack(n,m,a,b,0);
System.out.println(ans);
sc.close();
}
static int backtrack(int n,int m,int a,int b,int money){
if(m%n==0){
return money;
}
int redMoney = 0;
if(n-m>0){
redMoney += (n-m)*a; // 需要红包 花费
}
int gifMoney = b*(n - (m%n)); // 需要的礼物 花费
money = redMoney<gifMoney?redMoney:gifMoney;
for(int i=1;i<n;i++){ // 最多发n个红包
int n1 = n-i; // 小朋友人数
int money1 = b*(n1 - ((m+i)%n1))+i*a;
if(money1<money&&(m+i)%n1==0){
money = money1;
}
}
return money;
}
}
分礼物
最新推荐文章于 2022-03-31 15:46:58 发布