小白书数据结构基础线性表的训练参考
题目链接 http://acm.hust.edu.cn/vjudge/problem/19134
解题思路
直接模拟。遇到星期五六忽略就行。
代码
#include<iostream> #include<string.h> #include<stdio.h> using namespace std; const int maxLen = 101; const int maxDay = 3651; int partyDay[maxLen]; bool Day[maxDay]; int main() { int cases; cin >> cases; while(cases--) { memset(Day, false, sizeof(Day)); int day, party; int tot = 0; cin >> day >> party; for(int i=0; i< party; i++) cin >> partyDay[i]; for(int i=0; i< party; i++) { int j=0; j+= partyDay[i]; while(j<=day) { if((j+1)%7!=0 && j%7!=0) { Day[j] = true; j+= partyDay[i]; } else j+= partyDay[i]; } } for(int i=1; i<=day; i++) if(Day[i]) tot++; cout << tot << endl; } return 0; }
时间: 2024-10-18 04:21:52