使用空闲电脑免费搭建一个私人的网盘

如果你也有一台空闲电脑,可以使用它来搭建一个私人的网盘。

这里使用的是飞梦云网盘;

服务端下载

服务器文件使用hash校验进行储存,实现重复上传的文件秒传功能。

Fuse4Ui(虚拟分区工具):下载

支持把用户文件夹虚拟成一个磁盘分区,特点本地零缓存,只要网盘有空间,无限制文件大小(解决类似其它网盘复制文件到虚拟网盘需要缓存目录可用空间大小的的限制问题)。

客户端(暂时支持Windows,Android):下载

效果图:

根据每个人的空闲时间排班表需要先确定排班的目标,比如最小化加班时间、尽量平均分配等等。在确定目标之后,可以使用一些算法来生成排班表,比如贪心算法、遗传算法等。 这里提供一种简单的贪心算法,假设排班目标是尽量平均分配,具体的步骤如下: 1. 将每个人的空闲时间转换成一个二进制数组,1 表示空闲,0 表示不空闲。 2. 对每一天,按照以下步骤进行排班: 1. 统计每个人在这一天的空闲时间。 2. 找到这一天空闲时间最多的人,并将其排入班次表中。 3. 将这个人在这一天的空闲时间标记为已用。 4. 重复步骤 2-3,直到班次表填满为止。 具体的代码如下: ```python import pandas as pd import numpy as np # 读取 Excel 表格 df = pd.read_excel('shift.xlsx', index_col=0) # 将空闲时间转换成数组 arr = np.where(df == '空闲', 1, 0) # 生成排班表 shifts = pd.DataFrame(columns=df.columns) for i in range(len(df.columns)): day_arr = arr[:, i] free_counts = np.sum(day_arr, axis=0) while free_counts > 0: person = np.argmax(day_arr) shifts.loc[0, df.columns[i]] = df.index[person] day_arr[person] = 0 free_counts -= 1 # 输出排班表 print(shifts) ``` 这里使用了 `np.where()` 函数将空闲时间转换成了数组,然后按照上述步骤生成排班表。你可以根据实际需求修改代码,并将排班表输出到 Excel 表格中。需要注意的是,这种方法可能会导致某些人的加班时间较长,所以在实际使用时需要根据具体情况进行调整。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

jues

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值