YJC tricks time
Time Limit: 20 Sec
Memory Limit: 256 MB
题目连接
http://acm.hdu.edu.cn/showproblem.php?pid=5276
Description
YJC收到了一份神秘礼物。是一个长成这样的钟。
YJC不是时间领主所以他并不能乱搞时间,但是这个钟实在是太难认了!所以他想来耍耍你。
现在YJC给你时针和分针间的夹角,让你告诉他现在是什么时候。
你将以以下格式给出可能的时间:
HH:MM:SS
分别表示小时,分钟,秒(比如:08:30:20)在这里使用12小时制,也就是说时间范围是从00:00:00到11:59:59
另外,YJC不想要太精确的时间,所以当且仅当SS mod 10 = 0,答案才合法。
Input
多组数据,数据组数 ≤1000。
对于每组数据每行输入一个整数x表示角度,为了方便x乘了12000(这样你就不用使用浮点型读入而可以使用整数)。在这题里我们使用角度制。角度按成的劣角算。所以x不会超过 12000∗180=2160000。
Output
对于每组数据:
输出T行。T表示这组数据答案总数。
以时间递增的顺序输出答案。(如果找不到合法答案,这组数据什么都不要输出)
Sample Input
99000
0
Sample Output
00:01:30
11:58:30
00:00:00
HINT
题意
题解:
初中数学题……
代码
#include <cstdio>
#include <cmath>
#include <cstring>
#include <ctime>
#include <iostream>
#include <algorithm>
#include <set>
#include <vector>
#include <sstream>
#include <queue>
#include <typeinfo>
#include <fstream>
#include <map>
#include <stack>
typedef long long ll;
using namespace std;
//freopen("D.in","r",stdin);
//freopen("D.out","w",stdout);
#define sspeed ios_base::sync_with_stdio(0);cin.tie(0)
#define test freopen("test.txt","r",stdin)
#define maxn 1050005
#define mod 10007
#define eps 1e-9
const int inf=0x3f3f3f3f;
const ll infll = 0x3f3f3f3f3f3f3f3fLL;
inline ll read()
{
ll x=,f=;char ch=getchar();
while(ch<''||ch>''){if(ch=='-')f=-;ch=getchar();}
while(ch>=''&&ch<=''){x=x*+ch-'';ch=getchar();}
return x*f;
}
//**************************************************************************************
int kiss=*;
int main()
{
int x;
while(cin>>x)
{ for(int i=;i<;i++)
{
for(int j=;j<=;j++)
{
for(int k=;k<=;k+=)
{
int t1=**i+*j+*k;
int t2=**j+*k;
int t=(t1-t2);
while(t>=kiss)
t-=kiss;
while(t<)
t+=kiss;
if(t>kiss/)
t=kiss-t;
if(t==x)
printf("%02d:%02d:%02d\n",i,j,k);
}
}
}
}
}