4BECF5CC4C220FDC4B02091BA45D90E7.png
- 当时看到这道题的时候,就在想,怎样计算各个种类的粉笔需要卖多少,总觉得很复杂,并且没有一点思路,总之一脸蒙蔽,没有做出来。
- 后来一想其实也挺简单的,只是笔试的时候,缺少一定的指导思想:DP不过就是从暴力搜索演化而来的,一开始想不到DP,就先尝试暴力搜索。
暴力搜索:
- 从混搭盒数为0开始,逐个增加,一个个的尝试,暴力尝试完成后,我们也就找到了最大利益值。
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int n = scanner.nextInt();//cai
int m = scanner.nextInt();//bai
int a = scanner.nextInt();
int b = scanner.nextInt();
int c = scanner.nextInt();
int d = scanner.nextInt();
int x = scanner.nextInt();
int y = scanner.nextInt();
int z = scanner.nextInt();
scanner.close();
/**
* 暴力破解,从混搭盒数为0开始,逐个累加尝试即可:
* 1、要想获得的钱越多,当然要尽量将粉笔卖完。即去掉混搭用掉的粉笔,剩下的彩色和白色粉笔当然
* 要“全部彩色”、“全部白色”的卖完。
*/
int i = 0;//混搭盒数
int res = 0;//最大利润
while (i * a <= n && i * b <= m){
int temp = 0;
temp += i * x;
temp += (n - i * a) / d * z;//全部彩色
temp += (m - i * b) / c * y;//全部白色
if (temp > res){
res = temp;
}
i++;
}
System.out.println(res);
}
}