首页 > ACM题库 > HDU-杭电 > hdu 2076 夹角有多大(题目已修改,注意读题)[解题报告]C++
2013
12-29

hdu 2076 夹角有多大(题目已修改,注意读题)[解题报告]C++

夹角有多大(题目已修改,注意读题)

问题描述 :

时间过的好快,一个学期就这么的过去了,xhd在傻傻的看着表,出于对数据的渴望,突然他想知道这个表的时针和分针的夹角是多少。现在xhd知道的只有时间,请你帮他算出这个夹角。

注:夹角的范围[0,180],时针和分针的转动是连续而不是离散的。

输入:

输入数据的第一行是一个数据T,表示有T组数据。
每组数据有三个整数h(0 <= h < 24),m(0 <= m < 60),s(0 <= s < 60)分别表示时、分、秒。

输出:

输入数据的第一行是一个数据T,表示有T组数据。
每组数据有三个整数h(0 <= h < 24),m(0 <= m < 60),s(0 <= s < 60)分别表示时、分、秒。

样例输入:

2
8 3 17
5 13 30

样例输出:

138
75

点击打开链接

#include<stdio.h>
#include<math.h>
int main(void){
int t;
double a,b,h,m,s,th;
while(scanf("%d",&t)!=EOF){
    while(t--){
        scanf("%lf%lf%lf",&h,&m,&s);
        if(h>12.0)h-=12.0;
        a=h+m/60.0+s/3600.0;
        b=m+s/60.0;
        th=fabs(a*30.0-b*6.0);
        if(th>180.0)th=360-th;
        th=floor(th);
        printf("%.0f\n",th);
    }
}
return 0;
}

解题转自:http://blog.csdn.net/budatuacm/article/details/9878107


  1. 这道题这里的解法最坏情况似乎应该是指数的。回溯的时候
    O(n) = O(n-1) + O(n-2) + ….
    O(n-1) = O(n-2) + O(n-3)+ …
    O(n) – O(n-1) = O(n-1)
    O(n) = 2O(n-1)