您的位置:首页 > 编程语言 > C语言/C++

UVA 10050-Hartals

2016-07-27 15:49 302 查看

UVA 10050-Hartals

题目大意:输入样例数,输入连续天数,输入几组工人,输入工人罢工时间(在这个时间或时间倍数上工人可以罢工),周六周日罢工也没用,所以不罢工。输出在连续天数内的罢工天数

解题思路:模拟,当天数n+1%7==0或者天数n%7 == 0时为周六周日

#include <stdio.h>
#include <iostream>
using namespace std;
int main() {
int n;
cin >> n;
int re[10000];
while(n--) {
memset(re, 0, sizeof(re));
int m, day;
cin >> day;
cin >> m;
while(m--) {
int a;
cin >> a;
for(int i = a; i <= day; i = i + a) {
if((i+1) % 7 != 0 && i % 7 != 0 )
re[i] = 1;
}
}
int sum = 0;
for(int i = 1; i <= day; i++) {
if(re[i] == 1)
sum++;
}
cout << sum << endl;
}
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  uva c语言