洛谷——P2026 求一次函数解析式
2024-08-25 21:35:22
P2026 求一次函数解析式
题目背景
做数学寒假作业的怨念……
题目描述
给定两个整点的坐标,求它们所在直线的函数解析式(一次函数)。
输入输出格式
输入格式:
输入共两行。
第一行有两个整数x1,y1。表示第一个整点的坐标为(x1,y1)
第二行有两个整数x2,y2。表示第二个整点的坐标为(x2,y2)
输出格式:
输出共一行,即这个函数解析式。
输入输出样例
说明
二乘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() { ,f=; char ch=getchar(); ;ch=getchar();} +ch-',ch=getchar(); return x*f; } int GCD(int a,int b) { ) 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; &&ky>||kx<&&ky<) kc='+'; else kc='-'; gcd=GCD(ky*y1-kx*x1,ky); bx=(ky*y1-kx*x1)/gcd,by=ky/gcd; &&by>||bx<&&by<) bc='+'; else bc='-'; kx=abs(kx),ky=abs(ky),bx=abs(bx),by=abs(by); ) { if(kc=='+') { ) printf("y=%dx",kx); else ) printf("y=%dx%c%d",kx,bc,bx); else printf("y=%dx%c%d/%d",kx,bc,bx,by); } else { ) printf("y=%c%dx",kc,kx); else ) 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=='+') { ) printf("y=%d/%dx",kx,ky); else ) printf("y=%d/%dx%c%d",kx,ky,bc,bx); else printf("y=%d/%dx%c%d/%d",kx,ky,bc,bx,by); } else { ) printf("y=%c%d/%dx",kc,kx,ky); else ) 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); } } ; }
最新文章
- VB.NET中图像处理的一些技巧以及其和C#图像处理的差距。
- 杭电--1102--Constructing Roads--并查集
- 【转】Key/Value之王Memcached初探:一、掀起Memcached的盖头来
- Windows下Memcached在.Net程序中的实际运用(从Memcached客户端Enyim的库的编译到实际项目运用)
- JS判断终端(Android IOS)
- jquery $ dollar符号用法总结
- Exception in thread "main" org.hibernate.MappingException: You may only specify a cache for root
- CodeForces628-B.New Skateboard
- mongodb副本集实现
- silverlight用Encoding.UTF8读取shape文件的中文属性值 出现乱码
- 2018软工实践作业八之UML设计
- 获取Tomcat更详细的日志
- llvm Array Bounds Check Elimination
- vue教程1-02 data里面存储数据
- jsp链接orcl
- mysql慢查询日志功能的使用
- 使用Nginx过滤网络爬虫
- IOS 程序员开发最常用宏定义
- Codeforces 913C - Party Lemonade
- Java多线程(一)初步了解