P2026 求一次函数解析式

题目背景

做数学寒假作业的怨念……

题目描述

给定两个整点的坐标,求它们所在直线的函数解析式(一次函数)。

输入输出格式

输入格式:

输入共两行。

第一行有两个整数x1,y1。表示第一个整点的坐标为(x1,y1)

第二行有两个整数x2,y2。表示第二个整点的坐标为(x2,y2)

输出格式:

输出共一行,即这个函数解析式。

输入输出样例

输入样例#1: 复制

【一】
3 6
2 4
【二】
3 5
2 7
【三】
3 -1
5 -2

输出样例#1: 复制

【一】
y=2x
【二】
y=-2x+11
【三】
y=-1/2*x+1/2

说明

二乘X表示为2x

二分之一乘X表示为1/2*x

数学+模拟

#include<cstdio>
#include<cstring>
#include<iostream>
#include<algorithm>
using namespace std;
char kc,bc;
int n,x1,x2,y1,y2,kx,ky,bx,by,gcd;
int read()
{int x=0,f=1; char ch=getchar();while(ch<'0'||ch>'9'){if(ch=='-')f=-1;ch=getchar();}while(ch>='0'&&ch<='9') x=x*10+ch-'0',ch=getchar();return x*f;
}
int GCD(int a,int b)
{if(b==0) return a;return GCD(b,a%b);
}
int main()
{x1=read(),y1=read();x2=read(),y2=read();gcd=GCD(y2-y1,x2-x1);kx=(y2-y1)/gcd,ky=(x2-x1)/gcd;if(kx>0&&ky>0||kx<0&&ky<0) kc='+';else kc='-';gcd=GCD(ky*y1-kx*x1,ky);bx=(ky*y1-kx*x1)/gcd,by=ky/gcd;if(bx>0&&by>0||bx<0&&by<0) bc='+';else bc='-';kx=abs(kx),ky=abs(ky),bx=abs(bx),by=abs(by);if(ky==1){if(kc=='+'){if(bx==0) printf("y=%dx",kx);else if(by==1) printf("y=%dx%c%d",kx,bc,bx);else printf("y=%dx%c%d/%d",kx,bc,bx,by);}else {if(bx==0) printf("y=%c%dx",kc,kx);else if(by==1) printf("y=%c%dx%c%d",kc,kx,bc,bx);else printf("y=%c%dx%c%d/%d",kc,kx,bc,bx,by);}}else{if(kc=='+'){if(bx==0) printf("y=%d/%dx",kx,ky);else if(by==1) printf("y=%d/%dx%c%d",kx,ky,bc,bx);else printf("y=%d/%dx%c%d/%d",kx,ky,bc,bx,by);}else {if(bx==0) printf("y=%c%d/%dx",kc,kx,ky);else if(by==1) printf("y=%c%d/%d*x%c%d",kc,kx,ky,bc,bx);else printf("y=%c%d/%d*x%c%d/%d",kc,kx,ky,bc,bx,by);}}return 0;
}

转载于:https://www.cnblogs.com/z360/p/7853833.html

洛谷——P2026 求一次函数解析式相关推荐

  1. P2026 求一次函数解析式【题解】

    小模拟被我做成了大模拟题awa.{\color{green}{小模拟被我做成了大模拟题awa.}}小模拟被我做成了大模拟题awa. 题意解析: 给出平面上两个定点(x1,y1)(x_1,y_1)(x1 ...

  2. code vs1517 求一次函数解析式(数论 纯数学知识)

    1517 求一次函数解析式  时间限制: 1 s  空间限制: 128000 KB  题目等级 : 白银 Silver 题解  查看运行结果 题目描述 Description 相信大家都做过练习册上的 ...

  3. 题解 P2026 【求一次函数解析式】

    高中方式轻松解决这个模拟题. 首先我们了解斜率的简单求法: \[k= {y2-y1 \over x2-x1}{=}{\Delta y \over \Delta x}\] 然后我们了解到让我们求解一次函 ...

  4. 洛谷 P1440 求m区间内的最小值

    题目描述 一个含有n项的数列(n<=2000000),求出每一项前的m个数到它这个区间内的最小值.若前面的数不足m项则从第1个数开始,若前面没有数则输出0. 输入输出格式 输入格式: 第一行两个 ...

  5. 洛谷 P5725 求三角形

    题目链接: P5725 [深基4.习8]求三角形 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn)https://www.luogu.com.cn/problem/P5725题目描述: ...

  6. 【luogu2026】【数学】求一次函数解析式

    传送门 题目背景 做数学寒假作业的怨念-- 题目描述 给定两个整点的坐标,求它们所在直线的函数解析式(一次函数). 输入格式 输入共两行. 第一行有两个整数x1,y1.表示第一个整点的坐标为(x1,y ...

  7. [洛谷P1440]求m区间内的最小值

    题目大意:给你n个数,求出每个数前m位的最小值 题解:单调队列,用一个可以双向弹出的队列来存一串数,满足里面的数具有单调性,我们可以假设它是单调递增的,即求最小的数.那么可以把要插入的这个数与队尾元素 ...

  8. 洛谷P1908求逆序对【树状数组】

    逆序对 逆序对的定义:对于给定的一段正整数序列,逆序对就是序列中 ai>aj,i<ja_i>a_j,i<jai​>aj​,i<j,让统计逆序对的个数. 本题的数据加 ...

  9. 洛谷B2079 求出 e 的值(阶乘)

    题目描述 利用公式 e=1+1/1!+1/2!+1/3!+⋯+1/n!,求 e 的值,要求保留小数点后 10位. 输入格式 输入只有一行,该行包含一个整数 n,表示计算 e 时累加到 1/n!. 输出 ...

  10. 【暑期每日一题】洛谷(一)

    [暑期每日一题]洛谷 P1048 [NOIP2005 普及组] 采药 [暑期每日一题]洛谷 P1048 [NOIP2005 普及组] 采药_辰辰是个天资聪颖的孩子,他的梦想是成为世界上最伟大的医师.为 ...

最新文章

  1. 织梦同步静态文件到服务器,静态网站添加到织梦
  2. varnish 高性能方向代理服务器
  3. js 中meta 移除head_JS函数和winform函数之间的相互调用
  4. 插值问题(拉格朗日插值、牛顿插值)
  5. 拒绝空谈 AI 设想!手把手教你构建实时、高可用的 AI 调度平台
  6. 「Photoshop 入门教程」如何在Mac版 Photoshop 中打开图像?
  7. KITTI数据集Raw Data与Ground Truth序列00-10的对应关系,以及对应的标定参数
  8. web前端----------网易云音乐播放器简单的实现(素材自行下载)
  9. 孤尽训练营打卡日记day17--面向对象
  10. shiro学习系列:shiro自定义filter过滤器
  11. Android Lost RAM的统计方法
  12. CS231n课程笔记翻译3:线性分类笔记
  13. Python视频图像播放中加入文字
  14. md文档html显示+toc,使用md-toc.js来生成文章目录
  15. 互联网经济的背后-梅特卡夫效应与双边市场效应
  16. 微信小程序打印小票详解
  17. python接口自动化-token
  18. 学习PLC必须要知道的小常识
  19. 4、opencv图像基本操作和算术运算16个应用案例
  20. Python实例---经典问题生兔子的递归与迭代方法的实现

热门文章

  1. PphpStorm常用操作整理
  2. 使用Windows service创建一个简单的定时器
  3. 15年3月CCF真题2-数字排序
  4. css中margin属性的探究
  5. 【算法导论】第15章动态规划
  6. Magento报错之SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry for key 1
  7. 一、struts入门
  8. sublime ctrl b突然不能用解决方法
  9. css 的z-index研究
  10. 我看了全部文件的字符串资源