博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Codeforce916A
阅读量:6272 次
发布时间:2019-06-22

本文共 2202 字,大约阅读时间需要 7 分钟。

A. Jamie and Alarm Snooze
time limit per test
2 seconds
memory limit per test
256 megabytes
input
standard input
output
standard output

Jamie loves sleeping. One day, he decides that he needs to wake up at exactly hh: mm. However, he hates waking up, so he wants to make waking up less painful by setting the alarm at a lucky time. He will then press the snooze button every x minutes until hh: mm is reached, and only then he will wake up. He wants to know what is the smallest number of times he needs to press the snooze button.

A time is considered lucky if it contains a digit '7'. For example, 13: 07 and 17: 27 are lucky, while 00: 48 and 21: 34 are not lucky.

Note that it is not necessary that the time set for the alarm and the wake-up time are on the same day. It is guaranteed that there is a lucky time Jamie can set so that he can wake at hh: mm.

Formally, find the smallest possible non-negative integer y such that the time representation of the time x·y minutes before hh: mm contains the digit '7'.

Jamie uses 24-hours clock, so after 23: 59 comes 00: 00.

Input

The first line contains a single integer x (1 ≤ x ≤ 60).

The second line contains two two-digit integers, hh and mm (00 ≤ hh ≤ 23, 00 ≤ mm ≤ 59).

Output

Print the minimum number of times he needs to press the button.

Examples
Input
3 11 23
Output
2
Input
5 01 07
Output
0
Note

In the first sample, Jamie needs to wake up at 11:23. So, he can set his alarm at 11:17. He would press the snooze button when the alarm rings at 11:17 and at 11:20.

In the second sample, Jamie can set his alarm at exactly at 01:07 which is lucky.

 

分析:水题。给出一个时间hh:mm(24小时制),每次可以把时间往后退x分钟,

直到hh:mm中出现数字7为止,输出后退次数。

 

#include
int f(int a){ while(a) { if(a%10==7) return 1; a/=10; } return 0;}int main(){ int x,a,b; scanf("%d%d%d",&x,&a,&b); if(f(a)||f(b)) {printf("0\n");return 0;} int ans=0; while(true) { if(b-x<0)//后退 { b=60-(x-b); if(a==0) a=23; else a=a-1; } else b=b-x; ans++; if(f(a)||f(b)) break; } printf("%d\n",ans); return 0;}
View Code

 

转载于:https://www.cnblogs.com/ACRykl/p/8320829.html

你可能感兴趣的文章
半小时学会上传本地项目到github
查看>>
Android学Jni/Ndk 开发记录(一)
查看>>
Linux Tcl和Expect的安装
查看>>
WPF中的依赖项属性(转)
查看>>
linux防火墙相关 iptables
查看>>
最简单的单例模式
查看>>
JPopupMenu的使用以及JPopupMenu中子组件的事件处理
查看>>
从反汇编的角度看引用和指针的区别
查看>>
拓马长枪定乾坤
查看>>
UIProgressView的详细使用
查看>>
Silverlight实用窍门系列:70.Silverlight的视觉状态组VisualStateGroup
查看>>
照片筛选与上传功能
查看>>
Hello ZED
查看>>
常见web攻击方式
查看>>
hdu 4472
查看>>
oracle存储过程中is和as区别
查看>>
windows 2003 群集
查看>>
几个gcc的扩展功能
查看>>
Spark一个简单案例
查看>>
关于结构体占用空间大小总结(#pragma pack的使用)
查看>>