EOJ3004-生理高峰
2020-04-05 18:20
260 查看
题目
人生来就有三个生理周期,分别为体力、感情和智力周期,它们的周期长度为 23 天、28 天和 33 天。每一个周期中有一天是高峰。在高峰这天,人会在相应的方面表现出色。例如,智力周期的高峰,人会思维敏捷,精力容易高度集中。因为三个周期的周长不同,所以通常三个周期的高峰不会落在同一天。对于每个人,我们想知道何时三个高峰落在同一天。
对于每个周期,我们会给出从当前年份的第一天开始到出现高峰的天数(不一定是第一次高峰出现的时间)。你的任务是给定一个从当前年份第一天开始数的天数,输出从给定时间开始(不包括给定时间)下一次三个高峰落在同一天的时间(距给定时间的天数)。例如:给定时间为 10,下次出现三个高峰同天的时间是 12,则输出 2。
输入格式
第 1 行:整数 T (1≤T≤10) 为问题数
对于每组测试数据:
每行输入四个整数:p,e, i 和 d。p, e, i 分别表示体力、情感和智力高峰出现的时间(从当年的第一天开始计算)。d 是给定的时间,可能小于 p, e, 或 i。
所有给定时间是非负的并且小于 365, 所求的时间小于等于 21252(=23×28×33)。
输出格式
对于每个问题,输出一行问题的编号(格式:case #0: 等)。
然后在一行中输出从给定时间起,下一次三个高峰同天的时间(距离给定时间的天数)。
样例
input 3 0 0 0 100 4 5 6 7 283 102 23 320 output case #0: the next triple peak occurs in 21152 days. case #1: the next triple peak occurs in 16994 days. case #2: the next triple peak occurs in 8910 days.
code
#include<bits/stdc++.h> using namespace std; int T,p,e,i,d,rst; int j; int main() { cin>>T; for(j=0;j<T;++j){ cin>>p>>e>>i>>d; for(rst=d+1;;++rst){ if((rst-p)%23==0&&(rst-e)%28==0&&(rst-i)%33==0){ printf("case #%d:\nthe next triple ",j); printf("peak occurs in %d days.\n",rst-d); break; } } } return 0; }
- 点赞
- 收藏
- 分享
- 文章举报
相关文章推荐
- 2018.4.3(程序设计与算法)生理周期,p,e,i出现高峰(枚举的练习)
- 我的生理时钟
- 简化急性生理评分(sapsⅱ) 是什么
- POJ 2977 生理周期 解题报告
- 人体正常生理指标 (你必须知道的!)
- 吴岩峰,杯酒快意,志在高峰
- POJ 1006 Biorhythms 生理周期 水题
- 今天的访问高峰,扛过去了
- POJ 1006 生理周期
- 10月网民上网高峰时段为晚上8点 比例升至6.64%
- 7.21高峰奖励政策--滴滴快车
- 1065:生理周期
- 滴滴快车奖励政策,高峰奖励,翻倍奖励,按成交率,指派单数分级(10月31日~11月6日)
- 滴滴快车奖励政策,高峰奖励,翻倍奖励,按成交率,指派单数分级(12月17日)
- 滴滴快车奖励政策,高峰奖励,翻倍奖励,按成交率,指派单数分级(1月1日)
- 滴滴快车奖励政策,高峰奖励,翻倍奖励,按成交率,指派单数分级(1月17日)
- 滴滴快车奖励政策,高峰奖励,翻倍奖励,按成交率,指派单数分级(2月3日)
- 滴滴快车奖励政策,高峰奖励,翻倍奖励,按成交率,指派单数分级(2月29日)
- 滴滴快车奖励政策,高峰奖励,翻倍奖励,按成交率,指派单数分级(3月17日)
- 滴滴快车奖励政策,高峰奖励,翻倍奖励,按成交率,指派单数分级(3月29日)