当前位置: 首页 > news >正文

QDU首届易途杯大赛-ycb老师与一道简单的物理题

ycb老师与一道简单的物理题

发布时间: 2017年5月22日 14:30   最后更新: 2017年5月22日 14:32   时间限制: 1000ms   内存限制: 128M

我们都知道ycb老师是一个阳刚的人,不仅如此,ycb老师还是一个很很绅士的人,一天他看到一个妹子被一个箱子挡住了路,于是他想移动这个箱子,帮助妹子清理路障,但是要是用力过猛会的话,ycb老师怕妹子认为自己是一个粗鲁的人,于是他想知道最小移动箱子的力是多大?

PS:忽略转动 地面水平,箱子看成质点,G=9.80665m/s^2,请注意是移动箱子(滑稽.jpg)。

第一行输入m,n , m表示物体质量,n表示物体与地面摩擦系数 (0=<m,n<1e7)

最小移动箱子的力F,保留6位小数 (printf("%.6f\n",ans);)

  复制
1 0
0.000000


忘了高中物理了怎么整啊...(笑哭.jpg)

首先利用摩擦角进行分析,可得:u(mg + Fsinθ) = Fcosθ;

化简可得:F = u*m*g/(usinθ + cosθ);

所以想到枚举θ,但是若想取得更精确的答案精度就需要更大的枚举精度,一大便又会TLE。

再次分析,发现(usinθ + cosθ)是一个上凸函数,于是利用三分求解即可。


代码

#include <cstdio>
#include <cmath>
using namespace std;
const long long inf = 0x3f3f3f3f3f3f3f3f;
const double pi = acos(-1.0);
const double G = 9.80665;
const double eps = 1e-8;
double u, m, ans, f, umg;
double calc(double x)
{
	return (u*sin(x) + cos(x));
}
void SanFen()
{
	double l = 0, r = pi*0.5, mid, mmid;
	while(r-l > eps)
	{
		mid = (l+r)/2.0;
		mmid = (mid+r)/2.0;
		if(calc(mid) <= calc(mmid)) l = mid;
		else r = mmid;
	}
	double k = calc(r);
	ans = umg/k;
}
int main()
{
	scanf("%lf %lf", &m, &u);
	umg = u*m*G;
	SanFen();
	printf("%.6f\n", ans);
	return 0;
}

继续加油~

相关文章:

  • SqlTest(2013-07-10)
  • 蓝桥杯-K倍区间(前缀和) 分巧克力(二分)
  • Linux下MySQL5.6源码安装
  • HDU-1024 Max Sum Plus Plus(DP)
  • C#开发微信门户及应用(27)-公众号模板消息管理
  • CodeForces 628D(数位DP)
  • 多重背包--二进制优化
  • JS高级程序设计2nd部分知识要点2
  • HDU-4549(矩阵快速幂+欧拉定理)
  • xcode Aborting commit: '~/Pods' remains in tree-conflict 错误的解决办法
  • 网络流之最大流(FF, EK, Dinic, SAP)
  • QDU-ycb的ACM进阶之路(多重背包做法)
  • 2017年第0届浙江工业大学之江学院程序设计竞赛决赛—B qwb与矩阵
  • F5 LTM 在SIP消息负载均衡中存在的问题
  • 2017年第0届浙江工业大学之江学院程序设计竞赛决赛—D qwb与神奇的序列
  • 【刷算法】求1+2+3+...+n
  • Docker 笔记(2):Dockerfile
  • GitUp, 你不可错过的秀外慧中的git工具
  • java 多线程基础, 我觉得还是有必要看看的
  • laravel 用artisan创建自己的模板
  • laravel5.5 视图共享数据
  • nginx(二):进阶配置介绍--rewrite用法,压缩,https虚拟主机等
  • spring cloud gateway 源码解析(4)跨域问题处理
  • SQL 难点解决:记录的引用
  • Theano - 导数
  • 关于for循环的简单归纳
  • 官方新出的 Kotlin 扩展库 KTX,到底帮你干了什么?
  • 海量大数据大屏分析展示一步到位:DataWorks数据服务+MaxCompute Lightning对接DataV最佳实践...
  • 精益 React 学习指南 (Lean React)- 1.5 React 与 DOM
  • 如何用vue打造一个移动端音乐播放器
  • 如何在 Tornado 中实现 Middleware
  • 学习笔记DL002:AI、机器学习、表示学习、深度学习,第一次大衰退
  • [Shell 脚本] 备份网站文件至OSS服务(纯shell脚本无sdk) ...
  • 1.Ext JS 建立web开发工程
  • # 数论-逆元
  • #if和#ifdef区别
  • #pragma data_seg 共享数据区(转)
  • #微信小程序:微信小程序常见的配置传值
  • (1)虚拟机的安装与使用,linux系统安装
  • (C++17) std算法之执行策略 execution
  • (Mac上)使用Python进行matplotlib 画图时,中文显示不出来
  • (TOJ2804)Even? Odd?
  • (二)PySpark3:SparkSQL编程
  • (附源码)计算机毕业设计SSM保险客户管理系统
  • (牛客腾讯思维编程题)编码编码分组打印下标题目分析
  • (十三)Java springcloud B2B2C o2o多用户商城 springcloud架构 - SSO单点登录之OAuth2.0 根据token获取用户信息(4)...
  • (四)linux文件内容查看
  • (转)利用PHP的debug_backtrace函数,实现PHP文件权限管理、动态加载 【反射】...
  • (轉貼)《OOD启思录》:61条面向对象设计的经验原则 (OO)
  • ... fatal error LINK1120:1个无法解析的外部命令 的解决办法
  • .[backups@airmail.cc].faust勒索病毒的最新威胁:如何恢复您的数据?
  • .gitignore
  • .NET Core使用NPOI导出复杂,美观的Excel详解
  • .NET Framework 服务实现监控可观测性最佳实践
  • .NET 反射 Reflect