3 条题解
-
1
luogu#B3921. [GESP202312 一级] 小杨的考试 题解
题意
题意十分明显,今天是星期 ,求第 天后是星期几。
思路
根据样例 :
今天是星期一,过 天,很明显是星期日。
似乎,可以直接加上过了几天就行了。
根据样例 :
今天是星期五,过 天,是星期一。
这里,我们发现,因为 ,所以并不这么简单,我们还需要对 ,进行 的操作,例如样例 ,。
可以得出代码
day = (today + after_day) % 7;
但此时还有一个问题,样例一中的数据,会使
day = 0
,而不是 ,这时,就需要手动判断一下。完整代码
#include <iostream> using namespace std; int main () { int today, after_day; cin >> today >> after_day; int day = (today + after_day) % 7; if (day == 0) cout << 7 << endl; else cout << day << endl; return 0; }
-
1
luogu-B3921题解
主要题意
现在是星期 ,经过 天后是星期几。
解题思路
暴力模拟,只要 大于 就减 ,然后输出。
上代码!
#include <bits/stdc++.h> using namespace std; long long x=0,n,i; int main() { cin>>x>>n; while(n>7) n=n-7; n=n+x; if(n>7) n=n-7; cout<<n; }
代码优化
我们发现,一只减 的结果即为 MOD 所得的余数。 注意:如果结果为 输出 。(即星期天)
#include <bits/stdc++.h> using namespace std; long long x=0,n,i; int main() { cin>>x>>n; if((n+x)%7==0) cout<<7; else cout<<(n+x)%7; }
- 1
信息
- ID
- 4937
- 时间
- 1000ms
- 内存
- 512MiB
- 难度
- 1
- 标签
- 递交数
- 67
- 已通过
- 22
- 上传者