n = 金额1 y = 折扣 x = n*y 金额2
输入总金额1:10000 总金额2:8000
订单集合:
id = 1, n = 3000 , y = 0.8, x = n*y
id = 2, n = 2000 , y = 1.0 , x = n*y
id = 3 ,n = 5000 , y = 0.7 , x = n*y
.......等等若干
输入总金额1和总金额2 需要在若干订单中根据金额1总和 = 总金额2 并且金额2 总和 = 总金额2
返回结果
:
id = 1, n = 2000, y = 0.8 ,x = n*y
id = 3, n = 4000, y = 0.7 ,x = n*y
...。。。。。等等,返回最优解。
输入总金额1和总金额2
需要在若干订单中根据
金额1总和 = 总金额2
并且金额2 总和 = 总金额2
你这个是要求⌛阿
金额1的总和= 总金额1。金额2的总和等于总金额2
写错了,订单数量越少越好
public class Test3 {
public static void main(String[] args) {
Scanner in=new Scanner(System.in);
System.out.println("输入总金额");
double n1 = in.nextDouble();
System.out.println("输入打折后的钱数");
double x2 = in.nextDouble();
double n=1;
double x=2;
double id=1;
while ( n==n1 && x==x2 ){
System.out.println(id);
}
兄弟,没有这么简单,需要订单组合然后得出结果。不一定是单个订单
请问你订单的数量大吗,这个算法对效率的要求高吗,还是只要能找出来就行。
数据量大,不要那种基本的挨个计算好几亿次的那种。
这个订单集合是什么类型的?请问是List<Map<String,Object>>这样的吗,还是别的集合类型?
这个只能用java去实现吗 还是可以用数据库实现
只能用JAVA
订单得类型List<Order>
class Order {
long id;
double n; //金额1
double y; //折扣
double x; //金额2
}