hdoj【1006】【未完待续】
来源:互联网 发布:ebrary电子书数据库 编辑:程序博客网 时间:2024/05/17 23:05
题意:
时钟的三个指针在两两之间至少D°的时候是开心的,求开心时间占一天的一个百分比。
思路:
我们看到这个百分比有三位小数,精度很高。
一天有24h,24*60min,24*60*60s,那么最小单位是秒。
换一种方法,考虑一天360*2度。但是可以看到,从秒到分到时间,这样转换到度来说,精度更高吧。
然后题目是要保证三个指针最少需要保证D°。
那么我们控制时针每个小时,使得分针最小,转动秒钟。从最小的临界条件,累加到最大的临界状态。那么考虑时间。应该也是最优精度吧。
①枚举每个小时,时针的角度=>最小分针的角度=>最小的秒钟角度,利用秒针枚举到最大的临界状态;枚举次数是24*60*60;
—————————–此时此歌:借过–印子月
后来开始打的时候发现这个D是实数,所以我们假设这个D是极端的D,小数点后6位,那么方法①貌似不行啊。所以还是到D度上来。
用角度,但是怎么枚举呢。总体的最小临界到最大临界是不变的,只是枚举方向换了。从被枚举对象秒针变成比单位度更小的单位。
然后可以看到一天的开始是0°0’0”到720°0’0”,那么就从最小的秒枚举开始,枚举次数是360*60*60,比刚刚的一天多拆分了15倍;
②:然后我直接想的就是从起点到终点中间判断一下就好了。
刚刚还卡机了。。。这个角度就是秒针的角度。
后来。。。其实把精度扩大的方法就是扩大角度的精度,我把一秒扩大1000倍,这样枚举。。。后来发现就是这样吧。。。我扩大360。。也就是枚举360*30*60*24次
—————————此时此歌:你的爱–王力宏
mdzz睡觉。神特么烦
#include <bits/stdc++.h>using namespace std;typedef long long LL;typedef unsigned long long ULL;const double eps=1e-6;const double pi=acos(-1.0);const int mod=998244353;const int INF=0x3f3f3f3f;const int N=1e5+10;double x[N],y[N];int main(){ int i,j; int nn; int xx; double d; double sum; double hh,mm,ss; double j1,j2,j3; double i1,i2,i3; nn=100*60*60*24; while(~scanf("%lf",&d)){ if(d==-1) break; xx=0; for(i=0;i<=nn;i++){ sum=i*100; hh=sum/3600; mm=sum/60; ss=sum; hh=hh-hh/12*12; mm=mm-mm/60*60; ss=ss-ss/60*60; j1=hh*30; j2=mm*6; j3=ss*6; i1=min(fabs(j1-j2),360-fabs(j1-j2)); i2=min(fabs(j1-j3),360-fabs(j1-j3)); i3=min(fabs(j2-j3),360-fabs(j2-j3)); if(i1-d<=eps) continue; if(i2-d<=eps) continue; if(i3-d<=eps) continue; xx++; } printf("%.3lf\n",(double)xx/(double)nn*100); }}
0 0
- hdoj【1006】【未完待续】
- 未完待续
- 未完待续
- 未完待续
- 未完,待续
- 未完待续~~~~~~~~~~~~~~~~
- 未完待续
- 未完待续
- 未完待续
- 未完待续
- 未完待续
- 未完,待续……
- dojo入门(未完待续)
- mysql优化(未完....待续....)
- 未完待续2
- JNI 概述 (未完待续)
- Google Map(未完待续)
- POJ1753(未完待续)
- C#中如何获取鼠标的位置坐标
- 套后台模板HTML+整套Easyui皮肤组件-后台管理系统模板
- POJ2965 BFS(自己写队列)+状态压缩 OR 偶数格子的棋盘规律
- Python的shelve模块小问题
- Capturing Video on iOS iOS拍摄视频的方法总结
- hdoj【1006】【未完待续】
- Unity3D之如何将包大小减少到极致
- linux用户登录启动配置文件
- xcode 项目工程配置详解
- 【幻灯片分享】揭开IPA文件的灰沙 -- 通过静态分析工具了解IPA实现 | 友盟 张超 | iOS DevCamp
- servlet程序找不到class的问题
- 全新安装Mac OSX 开发者环境 同时使用homebrew搭建 (LNMP开发环境)
- Web---HTTP请求、重定向、转发和数据压缩
- 博客:"重读黑客与画家"