2798. 满足目标工作时长的员工数目

公司里共有 n 名员工,按从 0 到 n - 1 编号。每个员工 i 已经在公司工作了 hours[i] 小时。

公司要求每位员工工作 至少 target 小时。

给你一个下标从 0 开始、长度为 n 的非负整数数组 hours 和一个非负整数 target 。

请你用整数表示并返回工作至少 target 小时的员工数。

示例 1:

输入:hours = [0,1,2,3,4], target = 2
输出:3
解释:公司要求每位员工工作至少 2 小时。

  • 员工 0 工作 0 小时,不满足要求。
  • 员工 1 工作 1 小时,不满足要求。
  • 员工 2 工作 2 小时,满足要求。
  • 员工 3 工作 3 小时,满足要求。
  • 员工 4 工作 4 小时,满足要求。
    共有 3 位满足要求的员工。
    示例 2:

输入:hours = [5,1,4,2,2], target = 6
输出:0
解释:公司要求每位员工工作至少 6 小时。
共有 0 位满足要求的员工。

纯暴力
每个都遍历一遍

class Solution {
public:
    int numberOfEmployeesWhoMetTarget(vector<int>& hours, int target) {
     int s=0;
     for(int i=0;i<hours.size();i++){
     if(hours[i]>=target){
         s+=1;
     }
     }   
     return s;
    }
};
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
要找出可产生以下数目的a类子网的子网掩码,首先需要了解IP地址和子网掩码的关系。IP地址由32位二进制数组成,分为四个8位子网段,每个子网段用十进制表示。子网掩码也由32位二进制数组成,用来限制IP地址所能使用的网络位和主机位。 对于a类IP地址,其网络位占用了8位,剩下的24位用于主机位。由于网络位占用了8位,所以只能有2^8=256个不同的网络,每个网络又可以拥有2^24-2=16777214个不同的主机。 假设要找到可产生n个a类子网的子网掩码,需满足以下条件: 1. n必须是2的幂次方,且0 < n <= 256。 2. 网络位占用的位数m满足2^m >= n,且8 <= m <= 31。 具体步骤如下: 1. 找到满足条件1和条件2的m值。 2. 计算出网络位的掩码十进制值,即子网掩码,如255.0.0.0。 3. 将子网掩码与a类IP地址进行按位与操作,得到网络ID,即该子网所属的网络。 4. 将网络ID的每个子网段转换为十进制形式,即为所求的子网掩码。 例如,要找到可产生16个a类子网的子网掩码,由于16是2的幂次方,满足条件1。然后找到满足条件2的m值,2^m = 16,所以m=4满足条件2。计算网络位的掩码十进制值为255.240.0.0,按位与操作得到的网络ID为10.0.0.0,所以子网掩码即为255.240.0.0。 总结:要找到可产生n个a类子网的子网掩码,需要满足2个条件:n必须是2的幂次方,且0 < n <= 256;网络位占用的位数m满足2^m >= n,且8 <= m <= 31。根据这些条件找到满足要求的m值,计算出子网掩码,并将网络ID的每个子网段转换为十进制形式,即为所求的子网掩码。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值