文档章节

【题解】p6160 [Cnoi2020]向量

o
 osc_4dady4pk
发布于 07/10 07:47
字数 414
阅读 25
收藏 0

行业解决方案、产品招募中!想赚钱就来传!>>>

原题传送门

啊又是勤奋学习的一天......

这种mo题目能做出来纯靠感觉。

样例分析

样例输入给了组3、4、5的勾股数,而输出正好是三向量加和为0时的答案。

嗯我好像感觉到了什么......

于是用余弦定理计算三个角出内积,再特判一下两边之和小于等于第三边:

#include<bits/stdc++.h>

#define db double//~~卡double差评~~
#define sqr(x) ((x)*(x))

using namespace std;

long double a,b,c,cA,cB,cC;

void Sort()
{
	if(a>b)swap(a,b);
	if(b>c)swap(b,c);
	if(a>b)swap(a,b);
}

int main()
{
//	freopen("in.in","r",stdin);
	
	scanf("%Lf %Lf %Lf",&a,&b,&c);
	Sort();
	
	if(a+b<=c){cA=-1;cB=-1;cC=1;}
	else
	{
		cA=-(sqr(b)+sqr(c)-sqr(a))/(2*b*c);
		cB=-(sqr(a)+sqr(c)-sqr(b))/(2*a*c);
		cC=-(sqr(a)+sqr(b)-sqr(c))/(2*a*b);
	}
	
	printf("%.1Lf\n",a*b*cC+b*c*cA+c*a*cB);
	return 0;
} 

事实证明结论蒙对了。

正面证明

试着将内积拆分成单个向量。

下文\(a,b,c\)均代指向量,且\(c\)模长最大。

\((a+b+c)^2=a^2+b^2+c^2+2ab+2bc+2ca\)

\(ab+bc+ca={1\over2}((a+b+c)^2-(a^2+b^2+c^2))\)

\(a^2+b^2+c^2\)为定值,我们考虑令\((a+b+c)^2\)最小

\(|a|+|b|\le|c|\)\((a+b+c)^2_{min}=(|c|-|a|-|b|)^2\)

\(|a|+|b|>|c|\),构成三角形即可,\((a+b+c)^2_{min}=0\)

#include<cstdio>

#define db double
#define sqr(x) ((x)*(x))

using namespace std;

long double a,b,c;

int main()
{
//	freopen("in.in","r",stdin);
	scanf("%Lf %Lf %Lf",&a,&b,&c);
	if(a+b<=c)printf("%.1Lf",0.5*(sqr(c-a-b)-sqr(a)-sqr(b)-sqr(c)));
	else printf("%.1Lf",0.5*(-sqr(a)-sqr(b)-sqr(c)));
	return 0;
} 

后记

世界的法则...

o
粉丝 0
博文 73
码字总数 0
作品 0
私信 提问
加载中
请先登录后再评论。
C++科学计算库--O2scl

一个面向对象的 C++科学计算库,可用于解方程,最小化,微分,积分,插值,优化,逼近,分析,拟合等。许多类可操作于通用的函数和向量类型。可用于O2scl在Linux,Mac和Windows(Cygwin的)平...

匿名
2012/10/29
4.7K
0
基于CSS3的3D图形引擎--DivSugar

DivSugar是一个基于CSS3的3D图形引擎。它提供了一个3D场景图形,一个动画系统,和几何类。场景图的节点是一个扩展的div元素,所以它使得整合三维动画到现有网站上的网页变得很容易,适合制作...

匿名
2013/06/03
1.6K
0
开题报告问题

文字识别 图像预处理 单字切割 文字特征抽取 对比数据库 1,图像预处理 手机屏幕的每一个像素都是由计算机中24位数表示的,每个像素都包含红(R) 绿(G)蓝(B)三种色彩分量,可表示为RGB C X, ...

761218914
2016/01/18
1
0
Elasticsearch 2.20 文档篇:索引词频率

term vector是在Lucene中的一个概念,就是对于documents的某一field,如title,body这种文本类型的, 建立词频的多维向量空间.每一个词就是一个维度, 这个维度的值就是这个词在这个field中的频率...

赛克蓝德
2016/02/13
3.1K
0
使用spark计算文档相似度

1、TF-IDF文档转换为向量 以下边三个句子为例 经过分词后变为 经过词频(TF)计算后,词频=某个词在文章中出现的次数 262144为总词数,这个值越大,不同的词被计算为一个Hash值的概率就越小,...

penngo
2016/12/17
7.7K
4

没有更多内容

加载失败,请刷新页面

加载更多

好用到爆的 Java 技巧

本文不是一个吹嘘的文章,不会讲很多高深的架构,相反,会讲解很多基础的问题和写法问题,如果读者自认为基础问题和写法问题都是不是问题,那请忽略这篇文章,节省出时间去做一些有意义的事情...

码农突围
24分钟前
8
0
消息队列(MessageQueue)-分析

这里分析消息队列的原理和一般做法和其理念价值 这里还会 分析 NATS 和其可改进点 TODO

梦想游戏人
28分钟前
14
0
Redis 教程

Redis 教程 REmote DIctionary Server(Redis) 是一个由Salvatore Sanfilippo写的key-value存储系统。 Redis是一个开源的使用ANSI C语言编写、遵守BSD协议、支持网络、可基于内存亦可持久化的...

rootliu
30分钟前
9
0
SPSSAU 付费数据研究报告服务

SPSSAU-付费数据分析报告服务(周老师提供) 本文分享自微信公众号 - SPSSAU(spssau)。 如有侵权,请联系 support@oschina.cn 删除。 本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起...

SPSSAU
2017/11/08
0
0
芋艿-springcloud gateway

http://www.iocoder.cn/Spring-Cloud/Spring-Cloud-Gateway/?github springcloud gateway 官方文档 https://cloud.spring.io/spring-cloud-gateway/reference/html/#gatewayfilter-factories......

Java搬砖工程师
49分钟前
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部