当前位置: 首页 > 知识库问答 >
问题:

用java实现computeDayGains()方法

席成仁
2023-03-14

为了吸引游客,拉斯维加斯的一家赌场提供了一个全吃自助餐,每个人都付他们想付的钱。

如果游客到达餐厅时没有更多的座位:

  - Either he waits his turn until a place becomes available
  - Either he waits a while and leaves before a place becomes available

一个游客一天可以来几次,在这种情况下,他最多只付一次钱

实现computedaygains(nbSeats,payingGuests,guestmotions)方法,该方法返回当天的收益:

    null
public class Solution {

    public static int computeDayGains(int nbSeats, int[] payingGuests , int[] guestMovements){
        //Write your code here


    return 0;
    }
}

class Solution {
 
    public static int computeDayGains(int nbSeats, int[] payingGuests , int[] guestMovements){
        
                int sum=0;
                for (int i=0;i< payingGuests.length;i++){

                    sum=sum+payingGuests[i]*guestMovements[i];
                    
                }
                return (nbSeats*sum);
            }
        }

请给我一些线索,以便我能够跟踪它们,以便准确地实现computedaygains()

共有1个答案

甘祺
2023-03-14

这个任务应该使用队列和设置来解决,以模拟咖啡馆和等待线,并使用注册表来跟踪客户机在一天中是否已经支付。

在迭代GuestMotions时,应该对给定的GuestID应用以下算法:

  1. 如果guestidcafe中,请将其从cafe中删除,并将guestid保存在注册表中以计算付款,除非客人已经付款。
  2. 如果guestid中,请将其从中删除(此处不进行付款!),否则将guestid添加到
  3. 如果cafe有可用空间(cafe.size() )并且 line不为空,请从 line中读取最后一个元素,并将其放到 cafe

总金额可以在步骤1中计算,也可以通过将保存在注册表中的所有客人的付款相加来计算。

由于该任务很可能是家庭作业/作业,因此不提供算法的实现供OP练习。

 类似资料:
  • 本文向大家介绍Java实现toString()方法,包括了Java实现toString()方法的使用技巧和注意事项,需要的朋友参考一下 示例 要轻松实现对象的toString方法,可以使用ToStringBuilder类。 选择字段: 结果示例: 明确命名字段: 结果示例: 您可以通过参数更改样式: 结果示例: 有一些样式,例如JSON,no Classname,short等。 通过反射: 您还可

  • 本文向大家介绍Java实现hashCode()方法,包括了Java实现hashCode()方法的使用技巧和注意事项,需要的朋友参考一下 示例 要轻松实现对象的hashCode方法,可以使用HashCodeBuilder类。 选择字段: 使用反射: 布尔参数指示是否应使用瞬态字段。 使用反射避免某些字段:            

  • 本文向大家介绍Java实现equals()方法,包括了Java实现equals()方法的使用技巧和注意事项,需要的朋友参考一下 示例 要轻松实现对象的equals方法,可以使用EqualsBuilder类。 选择字段: 使用反射: 布尔参数用于指示是否等于应检查瞬态字段。 使用反射避免某些字段:            

  • 本文向大家介绍Java中使用lambda和方法引用实现IntToLongFunction,包括了Java中使用lambda和方法引用实现IntToLongFunction的使用技巧和注意事项,需要的朋友参考一下 IntToLongFunction 是java.util.function包中的内置功能接口。该功能接口接受一个 int值的 参数,并产生一个long值的结果。IntToLongFunct

  • 本文向大家介绍Java中使用lambda和方法引用实现LongToIntFunction,包括了Java中使用lambda和方法引用实现LongToIntFunction的使用技巧和注意事项,需要的朋友参考一下 LongToIntFunction 是Java 8 中引入的java.util.function包的功能接口。该功能接口接受long值参数作为输入,并产生一个(int)整数值的结果。Lon

  • 本文向大家介绍java使用spring实现发送mail的方法,包括了java使用spring实现发送mail的方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了java使用spring实现发送mail的方法。分享给大家供大家参考。具体如下: 这里借鉴别人的优点以及自己的一些加工,写出如下代码: 希望本文所述对大家的java程序设计有所帮助。