洛谷 P1190 [NOIP2010 普及组] 接水问题

题目链接

题目大意

学校水房有m个龙头,每个龙头出水量为1。有n位学生接水,顺序已经固定,1到m位同学同时接水,完成需求量Wj时,下一位同学接替接水,接替过程不算时间,求所有同学都接水完的时间。

思路

模拟时间和接水次序即可。

输入与输出

输入

8 4 
23 71 87 32 70 93 80 76 

输出

163

AC代码

#include<stdio.h>
#include<iostream>
#include<algorithm>
#include<string.h>	
#include<math.h>
#include<queue>

using namespace std;

int n, m;
int f[10005];

int main(int argc, char* argv[])
{
	scanf("%d%d", &n, &m);
	for (int i = 1; i <= n; ++i)scanf("%d", &f[i]);
	int idx = m + 1, time = 0;
	while (idx <= n + m)
	{
		for (int i = 1; i <= m; ++i)
		{
			f[i]--;
			if (!f[i])f[i] = f[idx++];
		}
		time++;
	}
	printf("%d\n", time);
	return 0;
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值