ACM_三元一次函数解法(克莱姆法则)
三元一次函数
Time Limit: 2000/1000ms (Java/Others)
Problem Description:
计算三元一次函数。。如图
Input:
EOF,先输入n,表示样例个数,输入a1,b1,c1,d1,a2,b2,c2,d2,a3,b3,c3,d3(0=<x,y,z<=1000)
Output:
输出x,y,z(结果保留两位小数)
Sample Input:
2
3 3 1 20.00
6 0 2 20.00
6 4 0 20.00
3 0 1 6.00
0 2 2 10.00
1 3 1 10.00
Sample Output:
1.11 3.33 6.67
1.00 2.00 3.00
解题思路:克莱姆法则。
AC代码:
#include<bits/stdc++.h>
using namespace std;
int main(){
double a1,b1,c1,d1,a2,b2,c2,d2,a3,b3,c3,d3,D,D1,D2,D3;int t;
while(cin>>t){
while(t--){
cin>>a1>>b1>>c1>>d1>>a2>>b2>>c2>>d2>>a3>>b3>>c3>>d3;
D = a1*(b2*c3 - b3*c2) - a2*(b1*c3 - b3*c1) + a3*(b1*c2 - b2*c1);
D1 = d1*(b2*c3 - b3*c2) - d2*(b1*c3 - b3*c1) + d3*(b1*c2 - b2*c1);
D2 = a1*(d2*c3 - d3*c2) - a2*(d1*c3 - d3*c1) + a3*(d1*c2 - d2*c1);
D3 = a1*(b2*d3 - b3*d2) - a2*(b1*d3 - b3*d1) + a3*(b1*d2 - b2*d1);
printf("%.2f %.2f %.2f\n",D1/D,D2/D,D3/D);
}
}
return ;
}
废寝忘食的大牛
Time Limit: 2000/1000ms (Java/Others)
Problem Description:
某大牛最近废寝忘食地打代码,整天泡网吧(总觉得除了打代码还干了别的事情?),可就是这么励志的一个奋斗的大好青年,每次打完比赛都听不到题解,愤怒啊有木有,悲怆啊有木有,为了报复社会(?),他召唤了(shenmegui)一只还在读初中的小妹妹出了道题,恰好这小妹妹最近刚学了抛物线(y=ax^2+bx+c),那么问题就来了,挖掘机技术到底哪家强(误),额,不,是给出三个不重叠的点的坐标,求抛物线的表达式。
Input:
输入有多组测试数据,每组测试数据包括三个点的坐标,坐标点为整数,x1,y1,x2,y2,x3,y3,(-5000<xi,yi<5000)。
Output:
对于每组测试数据,请分别输出抛物线表达式的a,b,c值(保留六位小数)。若不构成抛物线,那就输出SB。因为小妹妹觉得这是道简单的题目。
Sample Input:
-1 1 0 0 1 1
Sample Output:
a=1.000000,b=0.000000,c=0.000000.
解题思路:克莱姆法则求抛物线的系数。
AC代码:
#include<bits/stdc++.h>
using namespace std;
typedef long long LL;
int main(){
LL a1,b1,a2,b2,a3,b3,D,D1,D2,D3;//要用long long,避免数据溢出
while(cin>>a1>>b1>>a2>>b2>>a3>>b3){
D = a1*a1*(a2-a3) - a2*a2*(a1-a3) + a3*a3*(a1-a2);
D1 = b1*(a2-a3) - b2*(a1-a3) + b3*(a1-a2);
D2 = a1*a1*(b2-b3) - a2*a2*(b1-b3) + a3*a3*(b1-b2);
D3 = a1*a1*(a2*b3-a3*b2) - a2*a2*(a1*b3-a3*b1) + a3*a3*(a1*b2-a2*b1);
if(!D||!D1)puts("SB");//无解SB
else printf("a=%.6f,b=%.6f,c=%.6f.\n",1.0*D1/D,!D2?0.0:(1.0*D2/D),!D3?0.0:(1.0*D3/D));
}
return ;
}
ACM_三元一次函数解法(克莱姆法则)的更多相关文章
- math & 三元一次方程组的解法
math & 三元一次方程组的解法 class 6 math 例题 问题: 1. 已经做好的与没有做好的比例是 5 比 7; 2 再做好51,完成总数的 70%; 3. 问,一共要做多少朵花? ...
- [LeetCode] Ternary Expression Parser 三元表达式解析器
Given a string representing arbitrarily nested ternary expressions, calculate the result of the expr ...
- [LeetCode] Increasing Triplet Subsequence 递增的三元子序列
Given an unsorted array return whether an increasing subsequence of length 3 exists or not in the ar ...
- HDU 6184 Counting Stars 经典三元环计数
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6184 题意: n个点m条边的无向图,问有多少个A-structure 其中A-structure满足V ...
- Python-函数式编程-map reduce filter lambda 三元表达式 闭包
lambda 匿名函数,核心是作为算子,处理逻辑只有一行但具有函数的特性,核心用于函数式编程中 三元运算符 其实本质上是if分支的简化版,满足条件返回 if 前面的值,不满足条件返回 else后面的值 ...
- alias导致virtualenv异常的分析和解法
title: alias导致virtualenv异常的分析和解法 toc: true comments: true date: 2016-06-27 23:40:56 tags: [OS X, ZSH ...
- Matlab数值计算示例: 牛顿插值法、LU分解法、拉格朗日插值法、牛顿插值法
本文源于一次课题作业,部分自己写的,部分借用了网上的demo 牛顿迭代法(1) x=1:0.01:2; y=x.^3-x.^2+sin(x)-1; plot(x,y,'linewidth',2);gr ...
- 增强学习(三)----- MDP的动态规划解法
上一篇我们已经说到了,增强学习的目的就是求解马尔可夫决策过程(MDP)的最优策略,使其在任意初始状态下,都能获得最大的Vπ值.(本文不考虑非马尔可夫环境和不完全可观测马尔可夫决策过程(POMDP)中的 ...
- Guass列选主元消去法和三角分解法
最近数值计算学了Guass列主消元法和三角分解法解线性方程组,具体原理如下: 1.Guass列选主元消去法对于AX =B 1).消元过程:将(A|B)进行变换为,其中是上三角矩阵.即: k从1到n-1 ...
随机推荐
- 浅谈微信小程序对于房地产行业的影响
前几日,我们曾经整理过一篇文章是关于微信小程序对于在线旅游业的影响的一些反思(浅谈微信小程序对OTA在线旅游市场的影响),近日由于生活工作的需要走访了一些房地产的住宅商品房,突然想到微信小程序对于房地 ...
- textarea 高度调整
textarea 高度调整 通过 rows 属性调整 高度
- UVALive 7008 Tactical Multiple Defense System
Tactical Multiple Defense System Time Limit:3000MS Memory Limit:0KB 64bit IO Format:%lld &a ...
- BNUOJ 23905 滑雪
滑雪 Time Limit: 1000ms Memory Limit: 65536KB This problem will be judged on UESTC. Original ID: 13096 ...
- HDU 482 String
String Time Limit: 1000ms Memory Limit: 32768KB This problem will be judged on HDU. Original ID: 482 ...
- Ubuntu 16.04在启动和关机时不显示启动和关机画面且显示详细的命令信息,没有进度条和Logo,或者只有紫色界面,或者没有开机画面等问题解决
主要有以下解决方法: 1.如果之前配置过Grub来显示详细的命令信息的,那么改回去就行了,参考:http://www.cnblogs.com/EasonJim/p/7129873.html,通过这种方 ...
- C++学习之多重继承与虚继承
一.多重继承 我们知道,在单继承中,派生类的对象中包含了基类部分 和 派生类自定义部分.同样的,在多重继承(multiple inheritance)关系中,派生类的对象包含了每个基类的子对象和自定义 ...
- C++类库
转载自:http://blog.csdn.net/Augusdi/article/details/8989763 基础类 一.C++标准库 1. Dinkumware C++ Library 参考站点 ...
- ios block 内存管理时使用注意
XMGStudent *stu = [[XMGStudent alloc] init]; __weak XMGStudent *weakStu = stu; stu.block = ^{ NSLog( ...
- ZOJ 3888 Twelves Monkeys (预处理+优先队列)
题目链接:ZOJ 3888 Twelves Monkeys 题意:题目描写叙述起来比較绕,直接讲案例 9 3 3 9 1 6 1 4 1 6 7 2 输入n,m,q.n限制了你询问的年份,m台时光机, ...