原题链接

总时间限制: 1000ms 内存限制: 65536kB

描述

人生来就有三个生理周期,分别为体力、感情和智力周期,它们的周期长度为23天、28天和33天。每一个周
期中有一天是高峰。在高峰这天,人会在相应的方面表现出色。例如,智力周期的高峰,人会思维敏捷,精
力容易高度集中。因为三个周期的周长不同,所以通常三个周期的高峰不会落在同一天。对于每个人,我们
想知道何时三个高峰落在同一天。对于每个周期,我们会给出从当前年份的第一天开始,到出现高峰的天数
(不一定是第一次高峰出现的时间)。你的任务是给定一个从当年第一天开始数的天数,输出从给定时间开
始(不包括给定时间)下一次三个高峰落在同一天的时间(距给定时间的天数)。例如:给定时间为10,下
次出现三个高峰同天的时间是12,则输出2(注意这里不是3)。

输入

一行,包含四个整数:p, e, i和d,相邻两个整数之间用单个空格隔开。
p, e, i分别表示体力、情感和智力高峰出现的时间(时间从当年的第一天开始计算)。
d 是给定的时间,可能小于p, e, 或 i。
所有给定时间是非负的并且小于等于365, 所求的时间小于等于21252。

输出

一个整数,即从给定时间起,下一次三个高峰同天的时间(距离给定时间的天数)。

样例输入

4 5 6 7

样例输出

16994

思路

注意题面“不包括给定时间”,所以枚举应该从d+1开始。

解法一:无脑暴力

#include<iostream>
using namespace std;
int main(){
int p,e,i,d;
cin>>p>>e>>i>>d;
int k=d+1;
for(;k<=21252;k++)
if((k-p)%23==0&&(k-e)%28==0&&(k-i)%33==0)break;
cout<<k-d<<endl;
return 0;
}

解法二:

认真观察可以发现,一种属性的高峰与这个属性的下一个高峰间
不可能存在三种属性共同的高峰。所以枚举的时候可以跳着枚举。

#include<iostream>
using namespace std;
int main(){
int p,e,i,d;
int k;
for(k=d+1;(k-p)%23;k++);
for(;(k-e)%28;k+=23);
for(;(k-i)%33;k+=23*28);
cout<<k-d<<endl; return 0;
}

小结

这题很简单,但却说明了即使是枚举,根据题意也有可能可以做简单优化。

最新文章

  1. IIS 启用CORS ,IISExpress 通过IP 访问
  2. [Machine Learning] 梯度下降法的三种形式BGD、SGD以及MBGD
  3. json提交
  4. WPF中ComboBox绑定数据库自动读取产生数据
  5. http请求返回响应码的意思
  6. CASS转ARCGIS
  7. CSS3的属性为什么要带前缀
  8. Hybrid App开发之JavaScript基础
  9. 一起学ASP.NET Core 2.0学习笔记(一): CentOS下 .net core2 sdk nginx、supervisor、mysql环境搭建
  10. Oracle在本地调试成功读取数据,但是把代码放到服务器读不出数据的解决方法。
  11. 010_React-组件的生命周期详解
  12. angular中的服务
  13. Java设计模式从精通到入门五 抽象工厂方法模式
  14. Fragment跳转至Activity片段随笔
  15. Criteria查询
  16. Fiddler设置代理后,iphone手机无法访问网络的全面解决办法
  17. Hg(Mercurial)版本管理学习
  18. Winform重画ComboBox背景色
  19. 设计模式(java)--状态模式
  20. 【bzoj4698】[Sdoi2008] Sandy的卡片 后缀数组

热门文章

  1. sudo apt-get update 与 sudo apt-get upgrate 的区别
  2. 黑马程序员_毕向东_Java基础视频教程——变量(随笔)
  3. 手把手numpy教程【二】——数组与切片
  4. Bash Shell之内建命令和保留字
  5. 【遗传编程/基因规划】Genetic Programming
  6. TCP三次握手的seq和ack号的【正确】理解
  7. Crystal | 水晶方法的七大特征,你了解吗?
  8. MySQL 间隙锁
  9. 索引 &#39;GXHRCS.PK_A253&#39; 或这类索引的分区处于不可用状态
  10. 30分钟快速上手Docker,看这篇就对了!