晚上好🌙🌙🌙
本答案参考ChatGPT-3.5
下面是用C++实现的解决方案:
#include <iostream>
#include <vector>
using namespace std;
int main() {
int A, B, N;
cin >> A >> B >> N;
vector<int> D(N);
for (int i = 0; i < N; i++) {
cin >> D[i];
}
int totalDays = A + B;
bool possible = true;
for (int i = 0; i < N; i++) {
int daysAfter = D[i] % totalDays;
if (daysAfter == 0) {
daysAfter = totalDays;
}
if (daysAfter <= A) {
possible = false;
break;
}
}
if (possible) {
cout << "Yes" << endl;
} else {
cout << "No" << endl;
}
return 0;
}
解决方案的思路如下:
- 输入A、B和N的值,分别表示节假日的天数、工作日的天数以及计划的个数。
- 创建一个大小为N的整数向量D,用于存储每个计划安排的天数。
- 计算总共的天数为A + B。
- 遍历每个计划,计算计划在多少天后进行。通过计算D[i] % totalDays得到计划在总天数之后的天数(余数)。
- 如果计划在总天数之后的天数小于等于A,表示计划无法在节假日安排,将可能的标志设为false并跳出循环。
- 根据可能的标志输出相应的结果。
希望以上解决方案能对你有所帮助,如有任何问题,请随时提问。