题意很简单——一共m天,给出好多数a1,a2...在它们的倍数日罢工,但是周六周日不罢工,输出m天中罢工的天数
思路:开个数组,模拟即可
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main()
{
int i,k,m,n,c,step,s,d[3700],count;
scanf("%d",&c);
while(c--)
{
scanf("%d",&m);
memset(d,0,sizeof(d));
count=0;
scanf("%d",&n);
for(i=0;i<n;i++)
{
scanf("%d",&step);
s=0;
while(s<=m)
{
s+=step;
if(s%7!=0&&s%7!=6)
d[s]=1;
}
}
for(i=1;i<=m;i++)
{
if(d[i]==1)
count++;
}
printf("%d\n",count);
}
return 0;
}
本文介绍了一个简单的算法问题:给定一系列罢工周期,在排除周末的情况下,计算特定时间段内的罢工天数。通过数组模拟的方式实现了问题求解。
1594

被折叠的 条评论
为什么被折叠?



