蓝桥杯-13届-刷题统计

long long countDay(long long a,long long b,long long n) {
long long ans = 0, week = 5 * a + 2 * b;
ans += n / week * 7;// 需要几个整周
n %= week;// 还剩下几个单天
if (n == 0) return ans;
for (int i = 0; i < 5; i++) {
n -= a;
ans++;
if (n <= 0) return ans;
}
// 因为既不止5天,又不是7天,那就只有6天了//这句是错的
// 因为存在模不尽,但是又正好需要7天的情况
if (n - b <= 0) return ans + 1;
return ans + 2;
}
int main()
{
long long a, b, n;
cin >> a >> b >> n;
cout<<countDay(a, b, n);
return 0;
}

这里我卡了一阵子90%,因为我以为:

  1. 不能整除7
  2. 超过5个单天

那一定是6

但是其实这是错误的,因为就算不能整除7,也存在需要7天才能完成的情况(6天不够,7天多了)

本文作者:YaosGHC

本文链接:https://www.cnblogs.com/yaocy/p/17196294.html

版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。

posted @   YaosGHC  阅读(26)  评论(0编辑  收藏  举报
点击右上角即可分享
微信分享提示
💬
评论
📌
收藏
💗
关注
👍
推荐
🚀
回顶
收起